제출 #1100970

#제출 시각아이디문제언어결과실행 시간메모리
1100970KodikHacker (BOI15_hac)C++17
0 / 100
1 ms504 KiB
#include <bits/stdc++.h>
using namespace std;

#define ff first
#define ss second
typedef long long ll;
typedef long double ld;
#define int ll
int mod = 998244353; 


signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n;
    cin >> n;
    int k = n/2 + n%2;
    vector<int> arr(2*n);
    for(int i = 0; i < n; ++i){
        int x;
        cin >> x;
        arr[i] = arr[n+i] = x;
    }
    vector<pair<int,int>> sliding(n, {0,0});
    int sum = 0;
    for(int i = 0, j = 0; i < n; ++i){
        while(j-i<k){
            sum += arr[j];
            ++j;
        }
        sliding[i].ff = sum;
        sum -= arr[i];
    }
    reverse(arr.begin(), arr.end());
    sum = 0;
    for(int i = 0, j = 0; i < n; ++i){
        while(j-i<k){
            sum += arr[j];
            ++j;
        }
        sliding[n-i-1].ss = sum;
        sum -= arr[i];
    }
    int ans = 0;
    for(int i = 0; i < n; ++i){
        ans = max(ans, min(sliding[i].ff, sliding[i].ss));
    }
    cout << ans << '\n';
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...