Submission #1281243

#TimeUsernameProblemLanguageResultExecution timeMemory
1281243sopaipillaHacker (BOI15_hac)C++20
0 / 100
1 ms572 KiB
#include <bits/stdc++.h>
#define int long long
#define endl "\n"
using namespace std;

int32_t main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);

    int n;
    cin >> n;
    int x[n+1], pf[n+1];
    pf[0]=0;
    for(int i=1; i<=n; ++i) {
        cin >> x[i];
        pf[i] = pf[i-1]+x[i];
    }
    int sf[n+2];
    sf[n+1]=0;
    for(int i=n; i>0; --i) sf[i] = sf[i+1]+x[i];

    int k=(n+1)/2, ans=0;
    for(int i=1; i<=n; ++i) {
        if(i<k) {
            int l = pf[i]+sf[n-(k-i-1)];
            int r = pf[i+k-1]-pf[i-1];
            ans = max(ans, min(l,r));
            continue;
        }
        int l = pf[i]-pf[i-k];
        int r;
        if((i+k-1)>n) r = sf[i]+pf[k-(n-i+1)];
        else r = pf[i+k-1]-pf[i-1];
        ans = max(ans, min(l,r));
    }
    cout << ans << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...