제출 #481973

#제출 시각아이디문제언어결과실행 시간메모리
481973MB2Bigger segments (IZhO19_segments)C++14
100 / 100
80 ms12996 KiB
#include <bits/stdc++.h>
using namespace std;
int n, l2[500005], dp[500005];
long long l1[500005];
int main()
{
	ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin>>n;
    for(int i=1; i<=n; i++)
    {
        cin>>l1[i];
        l1[i]=l1[i]+l1[i-1];
    }
    for(int i=1; i<=n; i++)
    {
        l2[i]=max(l2[i], l2[i-1]);
        dp[i]=dp[l2[i]]+1;
        int j=lower_bound(l1+1, l1+1+n, 2*l1[i]-l1[l2[i]])-l1;
        if(j<=n) l2[j]=max(l2[j], i);
    }
    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...