Submission #287940

#TimeUsernameProblemLanguageResultExecution timeMemory
287940dvdg6566Bigger segments (IZhO19_segments)C++14
37 / 100
1573 ms2420 KiB
#include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<ll,ll> pi; typedef vector<ll> vi; typedef vector<pi> vpi; typedef long double ld; #define pb emplace_back #define mp make_pair #define f first #define s second #define SZ(x) (ll)x.size() #define ALL(x) x.begin(),x.end() #define lb lower_bound #define ub upper_bound const ll MAXN=200001; const ll MOD=1e9+7; const ll INF = 3e9; ll A[MAXN]; ll N; ll dp[MAXN]; ll S[MAXN]; int main(){ cin>>N; for(int i=1;i<=N;++i){ cin>>A[i]; A[i]+=A[i-1]; } dp[0]=0; S[0]=0; for(int i=1;i<=N;++i){ for(int j=0;j<i;++j){ if(A[i] >= S[j]){ if(dp[j]+1 >= dp[i]){ dp[i]=dp[j]+1; S[i] = 2*A[i]-A[j]; } } } } cout<<dp[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...