Submission #1183217

#TimeUsernameProblemLanguageResultExecution timeMemory
1183217tunakaganLabels (NOI20_labels)C++20
0 / 100
51 ms8264 KiB
#include <bits/stdc++.h> using namespace std; int main(){ int n;cin>>n; vector<long long int>a(n-1); for(int i=0;i<n-1;i++){ cin>>a[i]; } vector<long long int>arr(n); int top=0; bool tru=false; int point; vector<int>toplar(n-1); for(int i=0;i<n-1;i++){ if(top>0&&a[i]<0||top<0&&a[i]>0){ top=0; } top+=a[i]; if(i==0){ toplar[i]=top; }else{ toplar[i]=a[i]+toplar[i-1];} if(top>n-1||top<-n+1){ cout<<"-1"; return 0; } if(top||toplar[i]==n-1){ tru=true; arr[i+1]=n; point=i+1; }else if(top||toplar[i]==-n+1){ tru=true; arr[i+1]=1; point=i+1; } } if(tru){ for(int i=point+1;i<n;i++){ arr[i]=arr[i-1]+a[i-1]; } for(int i=point-1;i>-1;i--){ arr[i]=arr[i+1]-a[i]; } for(int i=0;i<n;i++){ cout<<arr[i]<<" "; } }else{ int minus=-1; cout<<minus<<" "; } }
#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...