제출 #1243874

#제출 시각아이디문제언어결과실행 시간메모리
1243874lovrotFinancial Report (JOI21_financial)C++20
48 / 100
64 ms448 KiB
#include <cstdio>
#include <algorithm>
#include <vector>

using namespace std; 

typedef long long ll;

const int N = 7010;

int a[N], dp[N];

int main() { 
	int n, d;
	scanf("%d%d", &n, &d);

	int ans = 0;
	for(int i = 0; i < n; ++i) { 
		scanf("%d", a + i);
		dp[i] = 1;
		int cnt = 0;
		int to = -1;
		for(int j = i - 1; cnt < d && j >= 0; --j) { 
			if(a[j] <= a[i]) { 
				if((a[j] < a[i]) + dp[j] > dp[i]) { to = j; }	
				dp[i] = max(dp[i], (a[j] < a[i]) + dp[j]);
				cnt = 0;
			} else { 
				cnt ++;
			}
		}

//		printf("%d -> %d\n", i, to);
		ans = max(ans, dp[i]);
	}

	printf("%d\n", ans);
	return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

Main.cpp: In function 'int main()':
Main.cpp:15:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   15 |         scanf("%d%d", &n, &d);
      |         ~~~~~^~~~~~~~~~~~~~~~
Main.cpp:19:22: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |                 scanf("%d", a + i);
      |                 ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...