Submission #1293414

#TimeUsernameProblemLanguageResultExecution timeMemory
1293414quocbaooBigger segments (IZhO19_segments)C++20
0 / 100
1 ms712 KiB
#include<bits/stdc++.h> #define fi first #define se second #define ll long long using namespace std; ll a[500005];int n; int get(int ok){ ll s=0; for (int i=1;i<=ok;i++) s+=a[i]; int dem=1; for (int i=ok+1;i<=n;i++){ ll s1=0;int j=i,lu=j; while (j<=n&&s1<s){ s1+=a[j];lu=j;j++; } if (s1>=s) dem++,s=s1; i=lu; // cout<<s1<<endl; } return dem; } int main(){ // if (fopen("thu.inp","r")){ // freopen("thu.inp","r",stdin); // freopen("thu.out","w",stdout); // } ios_base::sync_with_stdio(0); cin.tie(0);cout.tie(0); cin>>n; for (int i=1;i<=n;i++) cin>>a[i]; int l=1,r=n,ans=1; // cout<<get(2)<<endl; while (l<=r){ int mid=(l+r)/2; if (get(mid)<get(mid+1)) l=mid+1; else r=mid-1; ans=max(ans,get(mid)); } 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...