Submission #424777

#TimeUsernameProblemLanguageResultExecution timeMemory
424777dooweyBigger segments (IZhO19_segments)C++14
0 / 100
1 ms324 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef pair<int, int> pii;

#define fi first
#define se second
#define mp make_pair
#define fastIO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);

const int N = (int)5e5 + 10;
ll A[N];

int main(){
    fastIO;
    int n;
    cin >> n;
    for(int i = 1; i <= n; i ++ ){
        cin >> A[i];
    }
    int en = 1;
    ll las = A[1];
    ll cur = 0;
    int res = 1;
    for(int j = 2; j <= n; j ++ ){
        cur += A[j];
        if(cur >= las){
            while(en + 1 < j && las + A[en + 1] <= cur - A[en + 1]){
                las += A[en + 1];
                cur -= A[en + 1];
                en ++ ;
            }
            res ++ ;
            las = cur;
            en = j;
            cur = 0;
        }
    }
    cout << res << "\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...
#Verdict Execution timeMemoryGrader output
Fetching results...