Submission #312246

#TimeUsernameProblemLanguageResultExecution timeMemory
312246sofapudenRemittance (JOI19_remittance)C++14
55 / 100
1085 ms8192 KiB
#include <bits/stdc++.h>

using namespace std;

int main() {
    int n; cin >> n;
    vector<int> a(n), b(n);
    for(int i = 0; i < n; ++i)cin >> a[i] >> b[i];
    for(int j = 0; j < 40; ++j){
        for(int i = 0; i < n; ++i){
            if(a[i] <= 1)continue;
            if(a[i] > b[i]){
                a[(i+1)%n]+=(a[i]-b[i]+1)>>1;
                a[i]-=(((a[i]-b[i]+1)>>1)<<1);
                if(a[i] < 0){a[(i+1)%n]--;a[i]+=2;}
            }
        }
        if(a == b){cout << "Yes\n";return 0;}
    }
    cout << "No\n"; 
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...