Submission #485426

#TimeUsernameProblemLanguageResultExecution timeMemory
485426blueLabels (NOI20_labels)C++17
100 / 100
50 ms5444 KiB
#include <iostream>
using namespace std;

const long long INF = 1'000'000'000'000'000'000LL;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int N;
    cin >> N;

    int D[1+N];
    for(int i = 2; i <= N; i++) cin >> D[i];


    long long lo = 0, hi = 0, curr = 0;

    for(int i = 2; i <= N; i++)
    {
        curr += D[i];
        lo = min(lo, curr);
        hi = max(hi, curr);
    }

    // cerr << lo << ' ' << hi << '\n';

    if(hi - lo != N-1)
    {
        cout << "-1\n";
    }
    else
    {
        D[1] = (1 - lo);
        curr = 0;
        for(int i = 1; i <= N; i++)
        {
            curr += D[i];
            cout << curr << ' ';
        }
        cout << '\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...