Submission #1181728

#TimeUsernameProblemLanguageResultExecution timeMemory
1181728mehmetkaganLabels (NOI20_labels)C++20
0 / 100
26 ms9284 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define int ll int32_t main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin >> N; vector<int> D(N - 1); for (int i = 0; i < N - 1; ++i) { cin >> D[i]; } vector<int> prefix(N, 0); for (int i = 1; i < N; ++i) { prefix[i] = prefix[i - 1] + D[i - 1]; } int min_prefix = *min_element(prefix.begin(), prefix.end()); int max_prefix = *max_element(prefix.begin(), prefix.end()); int lower_bound = 1 - min_prefix; int upper_bound = N - max_prefix; if (lower_bound > upper_bound) { cout << -1; return 0; } vector<int> A(N); A[0] = lower_bound; for (int i = 1; i < N; ++i) { A[i] = A[0] + prefix[i]; } for (int i = 0; i < N; ++i) { if (A[i] < 1 || A[i] > N) { cout << -1; return 0; } } for (int i = 0; i < N; ++i) { cout << A[i] << " "; } return 0; }
#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...