This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int main(){
int N;
cin>>N;
int D[N-1];
int diff=1;
int mini=INT_MAX,maxe=-INT_MAX;
for(int i=0; i<N-1; i++){
cin>>D[i];
diff+=D[i];
if(diff>maxe){
maxe=diff;
}
if(diff<mini){
mini=diff;
}
}
if(abs(mini-maxe)>=N-1){
int soln=N-maxe;
for(int i=0; i<N-1; i++){
cout<<soln<<' ';
soln+=D[i];
}
cout<<soln;
}
else if(mini==1-N){
int soln=N;
for(int i=0; i<N-1; i++){
cout<<soln<<' ';
soln+=D[i];
}
cout<<soln;
}
else if(maxe==N){
int soln=1;
for(int i=0; i<N-1; i++){
cout<<soln<<' ';
soln+=D[i];
}
cout<<soln;
}
else{
cout<<-1;
}
}
# | 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... |