Submission #1354856

#TimeUsernameProblemLanguageResultExecution timeMemory
1354856hyyhLabels (NOI20_labels)C++20
100 / 100
90 ms3688 KiB
#include <iostream>
#include <math.h>
#include <vector>
#include <string>
#include <algorithm>
#include <queue>
#include <stack>
#include <map>
#include <cstring>
#include <iomanip>
#include <set>
#include <bitset>
#include <unordered_map>
#include <cstdlib>

using namespace std;
using ll = long long;
using pii = pair<int,int>;
using piii = tuple<int,int,int>;
#define f first
#define s second
#define endl '\n'
#define all(x) begin(x),end(x)

int const INF = 1e9+10;

int main(){
    int n;cin >> n;
    vector<int> vc = {1};
    int cur = 1;
    int mini = 1;
    int maxi = 1;
    for(int i{1};i < n;i++){
        int g;cin >> g;
        vc.emplace_back(vc.back()+g);
        mini = min(vc.back(),mini);
        maxi = max(vc.back(),maxi);
    }
    int add = 1-mini;
    if(maxi+add == n){
        for(auto k:vc) cout << k+add << " ";
    }
    else cout << -1;
}
#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...