Submission #338900

#TimeUsernameProblemLanguageResultExecution timeMemory
338900nandonathanielBigger segments (IZhO19_segments)C++14
27 / 100
1598 ms71148 KiB
#include<bits/stdc++.h> using namespace std; const int MAXN=3005; long long dp[MAXN][MAXN],pref[MAXN]; int a[MAXN]; 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]; pref[i]=pref[i-1]+a[i]; } memset(dp,-1,sizeof(dp)); dp[0][0]=0; for(int i=1;i<=n;i++){ for(int j=1;j<=i;j++){ for(int k=i-1;k>=0;k--){ if(dp[k][j-1]!=-1 && pref[k]-pref[dp[k][j-1]-1]<=pref[i]-pref[k]){ dp[i][j]=k+1; break; } } } } for(int j=n;j>=1;j--){ if(dp[n][j]!=-1){ cout << j << '\n'; break; } } 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...