Submission #343690

#TimeUsernameProblemLanguageResultExecution timeMemory
343690TosicBigger segments (IZhO19_segments)C++14
0 / 100
1 ms364 KiB
#include <bits/stdc++.h> #define maxn 500010 using namespace std; int n, prMax[maxn]; long long a[maxn]; int main(){ ios_base::sync_with_stdio(0); cout.tie(0); cin.tie(0); cin >> n; for(int i = 1; i <= n; ++i){ cin >> a[i]; a[i] += a[i-1]; } for(int i = 1; i <= n; ++i){ int l = 1, r = n, prIdx = 0; while(l <= r){ int mid = (l + r)/2; prIdx = upper_bound(a, a+1+n, ((mid-1)*a[i]) /mid)-a-1; if(prMax[prIdx] >= mid-1){ prMax[i] = max(prMax[i], mid); l = mid + 1; } else { r = mid - 1; } } prMax[i] = max(prMax[i-1], prMax[i]); } cout << prMax[n]; }
#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...