Submission #897588

#TimeUsernameProblemLanguageResultExecution timeMemory
897588NK_Remittance (JOI19_remittance)C++17
100 / 100
266 ms16212 KiB
// Success consists of going from failure to failure without loss of enthusiasm
#include <bits/stdc++.h>
 
using namespace std;
 
#define nl '\n'
 
using ll = long long;
template<class T> using V = vector<T>;
using vi = V<int>;
using vl = V<ll>;
 
 
const int MX = 3e7;
int main() {
	cin.tie(0)->sync_with_stdio(0);
	
	int N; cin >> N;
	vl A(N), B(N); for(int i = 0; i < N; i++) cin >> A[i] >> B[i];
 
	for(int t = 0; t < MX / N; t++) {
		for(int x = 0; x < N; x++) if (A[x] > B[x]) {
			ll amt = min(A[x] / 2, (A[x] - B[x] + 1) / 2);
			A[x] -= 2 * amt;
			A[(x + 1) % N] += amt;
		}
	}
 
	cout << (A == B ? "Yes" : "No") << nl;
 
	exit(0-0);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...