Submission #1253323

#TimeUsernameProblemLanguageResultExecution timeMemory
1253323LeonaRagingNizin (COCI16_nizin)C++20
100 / 100
34 ms8264 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long
#define db(val) "[" #val " = " << (val) << "] "

const int maxn = 1e6 + 4;

int n, a[maxn];

signed main()
{
    ios::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    cin >> n;
    for (int i = 1; i <= n; i++)
        cin >> a[i];
    int sumL = 0, sumR = 0, res = 0;
    for (int l = 1, r = n; l <= r; l++) {
        if (sumL) res++;
        sumL += a[l];
        while (sumR < sumL && l < r) {
            if (sumR) res++;
            sumR += a[r];
            r--;
        }
        if (sumL == sumR) {
            sumL = sumR = 0;
        } 
        // cout << db(l) << db(r) << db(sumL) << db(sumR) << db(res) << '\n';
    }
    if (sumL != sumR && sumL * sumR > 0) res++;
    cout << res << '\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...
#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...