#include <iostream>
#include <vector>
#include <algorithm>
#define rep(i, s, e) for (ll i = s; i < e; i++)
#define upmin(a, b) a = min(a, b)
#define upmax(a, b) a = max(a, b)
using namespace std;
using ll = long long;
using vll = vector<ll>;
void solve() {
ll n;
cin >> n;
vll arr(n - 1);
ll sum = 0;
ll pref_max = 0;
ll pref_min = 0;
rep(i, 0, n - 1) {
cin >> arr[i];
sum += arr[i];
upmin(pref_min, sum);
upmax(pref_max, sum);
}
if (pref_max - pref_min != n - 1) {
cout << -1 << '\n';
return;
}
cout << 1 - pref_min << ' ';
ll last = 1 - pref_min;
rep(i, 0, n - 1) {
cout << arr[i] + last << ' ';
last = arr[i] + last;
}
cout << '\n';
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
solve();
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |