제출 #163913

#제출 시각아이디문제언어결과실행 시간메모리
163913maruii송금 (JOI19_remittance)C++14
0 / 100
2 ms376 KiB
#include <bits/stdc++.h>
using namespace std;
using pii = pair<int, int>;
#define ff first
#define ss second

int N, A[1000006];
set<pii> s;

int main() {
	ios_base::sync_with_stdio(0), cin.tie(0);
	cin >> N;
	for (int i = 1; i <= N; ++i) {
		int x;
		cin >> A[i] >> x;
		A[i] -= x;
		s.insert(pii(A[i], i));
	}
	while (1) {
		auto t = (--s.end())->ss;
		if (A[t] < 2) break;
		while (A[t] > 1) {
			s.erase(pii(A[t], t));
			s.erase(pii(A[t % N + 1], t % N + 1));
			int a = A[t] / 2;
			A[t] -= a * 2;
			A[t % N + 1] += a;
			s.insert(pii(A[t], t));
			s.insert(pii(A[t % N + 1], t % N + 1));
			t = t % N + 1;
		}
	}
	int flag = 0;
	for (int i = 1; i <= N; ++i) if (A[i]) flag = 1;
	if (flag) puts("No");
	else puts("Yes");
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...