Submission #1171979

#TimeUsernameProblemLanguageResultExecution timeMemory
1171979coolboy19521Bigger segments (IZhO19_segments)C++20
37 / 100
11 ms476 KiB
#include "bits/stdc++.h"

#define mxN 3003

using namespace std;

pair<int,long long> dp[mxN];

int a[mxN];

int main(){
	int N;
	cin >> N;
	
	for (int i = 1; i <= N; i ++)
		cin >> a[i];

	dp[0] = {0, 0};
	
	for (int i = 1; i <= N; i ++){
		long long sm = -a[i];
		for (int j = i - 1; 0 <= j; j --){
			auto [cn, ss] = dp[j];
			
			if (sm <= ss){
				dp[i] = max(dp[i], {cn + 1, sm});
			}
			
			sm -= a[j];
		}
	}
	
	cout << dp[N].first << endl;
}
#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...