제출 #337651

#제출 시각아이디문제언어결과실행 시간메모리
337651blue송금 (JOI19_remittance)C++11
100 / 100
871 ms14720 KiB
#include <iostream> #include <set> using namespace std; int a[1000000], b[1000000]; int main() { int N; cin >> N; for(int i = 0; i < N; i++) cin >> a[i] >> b[i]; bool flag; do { flag = 0; for (int i = 0; i < N; i++) { int remittance = (a[i] - b[i]) / 2; if (remittance > 0) { a[i] -= 2 * remittance; a[(i + 1) % N] += remittance; flag = 1; } } } while (flag); bool ok1 = true; bool ok2 = true; bool b0 = true; for (int i = 0; i < N; i++) { ok1 &= a[i] == b[i]; ok2 &= a[i] == b[i] + 1; b0 &= b[i] == 0; } ok2 &= !b0; if (ok1 || ok2) { cout << "Yes\n"; } else { cout << "No\n"; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...