Submission #755213

#TimeUsernameProblemLanguageResultExecution timeMemory
755213amirhoseinfar1385Remittance (JOI19_remittance)C++17
100 / 100
299 ms36324 KiB
#include<bits/stdc++.h> using namespace std; int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin>>n; vector<pair<long long,int>>all(n); for(int i=0;i<n;i++){ cin>>all[i].first>>all[i].second; } int cnt=0; int j=0; while(cnt<n*3){ if(all[j].first<=all[j].second){ j++; cnt++; j%=n; continue; } if(all[j].first==1&&all[j].second==0){ j++; cnt++; j%=n; continue; } cnt=0; int fj=j; while(all[fj].first>all[fj].second){ if(all[fj].second==0&&all[fj].first==1){ break; } if(all[fj].second==0){ long long fc=(all[fj].first-all[fj].second)/2; all[fj].first-=fc*2; all[(fj+1)%n].first+=fc; fj++; fj%=n; continue; } long long fc=(all[fj].first-all[fj].second+1)/2; all[fj].first-=fc*2; all[(fj+1)%n].first+=fc; fj++; fj%=n; } j++; j%=n; } int f=1; for(int i=0;i<n;i++){ if(all[i].first!=all[i].second){ f=0; } } if(f){ cout<<"Yes\n"; } else{ cout<<"No\n"; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...