Submission #1164234

#TimeUsernameProblemLanguageResultExecution timeMemory
1164234ChottuFLabels (NOI20_labels)C++20
100 / 100
75 ms5704 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    int N = n-1;
    int arr[N];
    for (int i = 0; i<N; i++){
        cin >> arr[i];
    }
    int pref[n];
    pref[n-1] = 0;
    pref[0] = arr[0];
    for (int i = 1; i<N; i++){
        pref[i] = pref[i-1] + arr[i];
    }
    for (int i = 0; i<n; i++){
        //cout << pref[i] << " ";
    }
    //cout << '\n';
    int mx = -(n+5000);
    int mn = n+5000;
    for (int i = 0; i<n; i++){
        mx = max(mx, pref[i]);
        mn = min(mn, pref[i]);
    }
    //cout << mx << " " << mn << '\n';
    if (mx - mn != (n-1)){
        cout << "-1\n";
    }
    else{
        int ans[n];
        ans[0] = n-mx;
        for (int i = 1; i<n; i++){
            ans[i] = ans[0] + pref[i-1];
        }
        for (int i = 0; i<n; i++){
            cout << ans[i] << " ";
        }
    }
    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...