#include<bits/stdc++.h>
using namespace std;
using ll = long long;
const int MXN = 1e6+6;
int n;
ll A[MXN], B[MXN];
int32_t main() {
cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0);
cin >> n;
for(int i=0; i<n; i++) cin >> A[i] >> B[i];
int i=0, it=0;
while(it<n) {
if(A[i]<=B[i] || (A[i]==1 && B[i]==0)) {
it++;
(++i) %= n;
continue;
}
it=0;
int j=i;
while(A[j]>B[j] && !(A[j]==1 && B[j]==0)) {
ll send = (A[j]-B[j]+(B[j]!=0))>>1;
A[j] -= send<<1;
A[(++j)%=n] += send;
}
}
for(int i=0; i<n; i++)
if(A[i]!=B[i]) {
cout << "No\n";
return 0;
}
cout << "Yes\n";
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |