Submission #1131983

#TimeUsernameProblemLanguageResultExecution timeMemory
1131983alexander707070Bigger segments (IZhO19_segments)C++20
37 / 100
1592 ms2680 KiB
#include<bits/stdc++.h>
#define MAXN 100007
using namespace std;

int n,a[MAXN];
long long pref[MAXN];

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

int main(){

    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        pref[i]=pref[i-1]+a[i];
    }

    dp[0]={0,0};
    for(int i=1;i<=n;i++){
        for(int f=i-1;f>=0;f--){
            if(dp[f].second<=pref[i]-pref[f]){
                dp[i]={dp[f].first+1,pref[i]-pref[f]};
                break;
            }
        }
    }

    cout<<dp[n].first<<"\n";

	return 0;
}
#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...