Submission #1336958

#TimeUsernameProblemLanguageResultExecution timeMemory
1336958duyanhchupapiLabels (NOI20_labels)C++20
100 / 100
33 ms4744 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 3e5 + 5, mod = 1e9 + 7;
const ll inf = 9e18;
int n;
ll a[N];

int main() {
	ios_base::sync_with_stdio(0); cin.tie(0);
	// freopen(".INP", "r", stdin);
	// freopen(".OUT", "w", stdout);
	cin >> n;
	ll mx = -inf, mn = inf;
	for (int i = 1; i < n; ++i) {
		cin >> a[i];
		a[i] += a[i - 1];
		mx = max(mx, a[i]);
		mn = min(mn, a[i]);
	}
	
	int ans = -1;
	for (int i = 1; i <= n; ++i) {
		if (i + mn < 1 || i + mx > n) continue;
		if (ans != -1) {
			cout << -1;
			return 0;
		}	
		ans = i;
	}

	if (ans == -1) cout << -1;
	else for (int i = 0; i < n; ++i) cout << ans + a[i] << ' ';
}
#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...