제출 #1101278

#제출 시각아이디문제언어결과실행 시간메모리
1101278IBory송금 (JOI19_remittance)C++17
15 / 100
1 ms560 KiB
#include <bits/stdc++.h> typedef long long ll; using namespace std; const int MAX = 1000007; ll A[MAX], B[MAX]; int main() { ios::sync_with_stdio(0); cin.tie(0); int N; cin >> N; for (int i = 0; i < N; ++i) cin >> A[i] >> B[i]; // Modify if N is small if (N <= 60) { ll mod = (1LL << N); for (int i = 0; i < N; ++i) { if (A[i] <= B[i]) continue; ll n = A[i] - B[i], t = 0; while (n) { t += n % mod; n /= mod; } A[i] = B[i] + t; } } for (int t = 0; t < 2; ++t) { for (int i = 0; i < N; ++i) { if (A[i] <= B[i]) continue; ll z = A[i] - B[i]; if (z % 2 && B[i]) z++; A[i] -= z / 2LL * 2; A[(i + 1) % N] += z / 2LL; } } for (int i = 0; i < N; ++i) { if (A[i] == B[i]) continue; cout << "No"; return 0; } cout << "Yes"; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...