QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#177261#5080. Folding Stickdj4zo6u_6WA 0ms3876kbC++14665b2023-09-12 19:24:452023-09-12 19:24:45

Judging History

你现在查看的是最新测评结果

  • [2023-09-12 19:24:45]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3876kb
  • [2023-09-12 19:24:45]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
#define ll long long

void solve();
signed main(){
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    solve();
}

void solve(){
    int n;
    cin>>n;
    vector<ll>a(n+5,0),dp(n+5,0),s(n+5,0);
    for(int i=1;i<=n;i++)cin>>a[i],s[i]=s[i-1]+a[i];
    for(int i=1;i<=n;i++){
        dp[i]=s[i];
        int l=0;
        for(int r=i,m;l+1<r;){
            m=(l+r)/2;
            if(dp[m]+s[m]<=s[i])l=m;
            else r=m;
        }
        dp[i]=s[i]-s[l];
    }
    ll mn=dp[n];
    for(int j=n;j>=0;j--){
        mn=min<ll>(mn,max<ll>(s[n]-s[j],dp[j]));
    }
    cout<<mn<<"\n";
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3876kb

input:

4
3 2 2 3

output:

4

result:

ok single line: '4'

Test #2:

score: 0
Accepted
time: 0ms
memory: 3836kb

input:

5
1 1 1 1 1

output:

1

result:

ok single line: '1'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3580kb

input:

7
1 3 2 3 4 2 2

output:

6

result:

ok single line: '6'

Test #4:

score: 0
Accepted
time: 0ms
memory: 3572kb

input:

9
5 6 3 4 8 8 2 2 5

output:

9

result:

ok single line: '9'

Test #5:

score: -100
Wrong Answer
time: 0ms
memory: 3532kb

input:

10
5 6 3 4 8 6 2 1 8 5

output:

13

result:

wrong answer 1st lines differ - expected: '9', found: '13'