#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=3e3+5,inf=1e18;
int _t,n,dp[N][N],p[N];
signed main(){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin>>n;
for (int i=1; i<=n; i++) cin>>p[i],p[i]+=p[i-1];
for (int i=0; i<=n; i++) dp[i][1]=p[i];
for (int j=2; j<=n; j++){
for (int i=1; i<=n; i++){
dp[i][j]=inf;
for (int l=i-1; l>0; l--){
if (p[i]-p[l]>=dp[l][j-1]){
dp[i][j]=p[i]-p[l]; break;
}
}
}
}
for (int j=n; j>0; j--)
if (dp[n][j]<inf){
cout<<j<<"\n"; break;
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |