Submission #525482

#TimeUsernameProblemLanguageResultExecution timeMemory
525482PiejanVDCRemittance (JOI19_remittance)C++17
0 / 100
1 ms204 KiB
#include <bits/stdc++.h> using namespace std; signed main() { int64_t n; cin>>n; vector<pair<int64_t,int64_t>>v(n); bool a = 0,b = 0; for(auto &z : v) { cin>>z.first>>z.second; if(z.first != 0) a = 1; if(z.second != 0) b = 1; } if(!a) { if(b) cout << "No"; else cout << "Yes"; return 0; } while(1) { bool f = 0; for(int ii = 0 ; ii < n-1 ; ii++) { int64_t d = max(0LL, (v[ii].first - v[ii].second + 1)/2LL); if(d) f = 1; v[ii].first -= 2LL*d; v[ii+1].first += d; } int64_t d = max(0LL, (v[n-1].first - v[n-1].second + 1)/2LL); if(d) f = 1; v[n-1].first -= 2LL*d; v[0].first += d; if(!f) break; } bool ok = 1; for(int i = 0 ; i < n ; i++) { if(v[i].first != v[i].second) ok = 0; } cout << (ok ? "Yes" : "No"); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...