Submission #502944

#TimeUsernameProblemLanguageResultExecution timeMemory
502944tengiz05Remittance (JOI19_remittance)C++17
100 / 100
760 ms8508 KiB
#include <bits/stdc++.h>

using i64 = long long;

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    
    int n;
    std::cin >> n;
    
    std::vector<int> a(n), b(n);
    for (int i = 0; i < n; i++) {
        std::cin >> a[i] >> b[i];
    }
    
    for (int _ = 0; _ < 100; _++) {
        int p = 0;
        for (int i = 0; i < n; i++) {
            int j = (p + 1) % n;
            int d = a[p] - b[p];
            if (d > 0) {
                if (d == 1 && a[p] > 1) {
                    d++;
                }
                d /= 2;
                a[p] -= 2 * d;
                a[j] += d;
            }
            p = j;
        }
        if (a == b) {
            std::cout << "Yes\n";
            return 0;
        }
    }
    
    std::cout << "No\n";
    
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...