Submission #342455

#TimeUsernameProblemLanguageResultExecution timeMemory
342455SeDunionBigger segments (IZhO19_segments)C++17
0 / 100
1 ms364 KiB
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 5e5 + 55;

int a[N];

int main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0), cout.tie(0);
	int n;
	cin >> n;
	for (int i = 1 ; i <= n ; ++ i) cin >> a[i];
	ll S = 0;
	int ans = 0;
	const int K = min(n, 3000);
	for (int s = 1 ; s <= K ; ++ s) {
		S += a[s];
		int cur = 1;
		ll P = S, T = 0;
		for (int i = s + 1 ; i <= n ; ++ i) {
			T += a[i];
			if (T >= P) {
				P = T;
				T = 0;
				cur++;
			}
		}
		ans = max(ans, cur);
	}
	cout << ans;
}
#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...