Submission #1300116

#TimeUsernameProblemLanguageResultExecution timeMemory
1300116thdh__Labels (NOI20_labels)C++20
100 / 100
43 ms4680 KiB
#include<bits/stdc++.h>
#define ll long long
#define pb push_back
#define ii pair<int, int>
#define fi first
#define se second
#define all(a) a.begin(), a.end()
#define int ll

using namespace std;

const int N = 3e5+5;
const int mod = 1e9+7;
const int inf = 2e9;

void solve() 
{
    int n;
	cin>>n;
	vector<int> a(n, 0);
	for (int i = 1; i < n; i++) cin>>a[i];
	for (int i = 2; i < n; i++) a[i] += a[i-1];
	int mx = -inf, mn = inf;
	for (int i = 1; i < n; i++) mx = max(mx, a[i]), mn = min(mn, a[i]);
	int cnt = 0, ss = -1;
	for (int st = 1; st <= n; st++) 
	{
		if (st + mx <= n && st + mn >= 1) cnt++, ss = st;
	}
	if (!cnt || cnt > 1) 
	{
		cout<<"-1";
		return;
	}
	for (int i = 0; i < n; i++) 
	{
		cout<<ss + a[i]<<" ";
	}
}

signed main() 
{
    ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    // freopen("input.txt", "r", stdin);
    // freopen("output.txt", "w", stdout);
    solve();
}
#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...