#include <bits/stdc++.h>
using namespace std;
#define int long long
const int maxn = 1e6 + 5;
int n;
int a[maxn], b[maxn];
signed main() {
cin >> n;
for (int i=0;i<n;i++) cin >> a[i] >> b[i];
for (int ii=0;ii<=1;ii++) {
for (int i=n-1;i>=0;i--) {
int need = max(b[i] - a[i], (int)0);
a[(i - 1 + n) % n] -= need * 2;
a[i] += need;
}
}
for (int ii=0;ii<=1;ii++) {
for (int i=0;i<n;i++) {
int trans = max((a[i] - b[i] + 1) / 2, (int)0);
a[(i + 1) % n] += trans;
a[i] -= trans * 2;
}
}
for (int i=0;i<n;i++) if (a[i] != b[i]) {
cout << "No\n";
return 0;
}
cout << "Yes\n";
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |