Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // NgJaBach: Forever Meadow <3
- #include<bits/stdc++.h>
- using namespace std;
- typedef long long int ll;
- typedef unsigned long long ull;
- #define pb push_back
- #define pob pop_back
- #define mp make_pair
- #define upb upper_bound
- #define lwb lower_bound
- #define bend(a) a.begin(),a.end()
- #define rev(x) reverse(bend(x))
- #define mset(a) memset(a, 0, sizeof(a))
- #define fi first
- #define se second
- #define gcd __gcd
- #define getl(s) getline(cin, s);
- #define setpre(x) fixed << setprecision(x)
- #define endl '\n'
- const int N=1050,M=1000000007;
- const ll INF=1e18+7;
- int main(){
- ios_base::sync_with_stdio(NULL); cin.tie(nullptr); cout.tie(nullptr);
- freopen("photo.in","r",stdin);
- freopen("photo.out","w",stdout);
- int n,a[N],prev;
- bool ok[N],flag;
- vector<int>ans;
- cin>>n;
- for(int i=1;i<n;++i) cin>>a[i];
- for(int i=1;i<=n;++i){
- for(int j=1;j<=n;++j) ok[j]=true;
- ok[i]=false;
- ans.clear();
- ans.pb(i); prev=i;
- flag=true;
- for(int j=1;j<n;++j){
- prev=a[j]-prev;
- if(prev<=0 or prev>n){
- flag=false;
- break;
- }
- if(!ok[prev]){
- flag=false;
- break;
- }
- ok[prev]=false;
- ans.pb(prev);
- }
- if(flag){
- cout<<ans[0];
- for(int j=1;j<n;++j) cout<<" "<<ans[j];
- return 0;
- }
- }
- return 0;
- }
- /*
- ==================================+
- INPUT: |
- ------------------------------ |
- ------------------------------ |
- ==================================+
- OUTPUT: |
- ------------------------------ |
- ------------------------------ |
- ==================================+
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement