Submission #1313190

#TimeUsernameProblemLanguageResultExecution timeMemory
1313190boclobanchatBigger segments (IZhO19_segments)C++20
37 / 100
1595 ms2284 KiB
#include<bits/stdc++.h>
using namespace std;
const int MAXN=5e5+5;
long long pref[MAXN];
pair<int,long long> dp[MAXN];
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>pref[i];
		pref[i]+=pref[i-1];
	}
	for(int i=1;i<=n;i++)
	{
		dp[i]={1,pref[i]};
		for(int j=i;j;j--) if(pref[i]-pref[j-1]>=dp[j-1].second)
		{
			dp[i]={dp[j-1].first+1,pref[i]-pref[j-1]};
			break;
		}
	}
	cout<<dp[n].first;
}
#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...