Submission #227247

#TimeUsernameProblemLanguageResultExecution timeMemory
227247alexandra_udristoiu송금 (JOI19_remittance)C++14
0 / 100
5 ms384 KiB
#include<iostream>
#define DIM 1000005
using namespace std;
int n, i, ok, x;
int a[DIM], b[DIM];
long long sum, sum2;
int nxt(int i){
    if(i == n){
        return 1;
    }
    return i + 1;
}
int main(){
    cin>> n;
    for(i = 1; i <= n; i++){
        cin>> a[i] >> b[i];
        sum2 += b[i];
    }
    if(sum2 == 0){
        cout<<"No";
        return 0;
    }
    do{
        ok = 1;
        for(i = 1; i <= n; i++){
            if(a[i] != b[i]){
                ok = 0;
                if(a[i] > b[i]){
                    x = (a[i] - b[i]) / 2 + (a[i] - b[i]) % 2;
                    a[ nxt(i) ] += x;
                    a[i] -= 2 * x;
                }
            }
        }
        sum = 0;
        for(i = 1; i <= n; i++){
            sum += a[i];
        }
        if(sum < sum2){
            break;
        }
    }while(ok == 0);

    if(ok == 1){
        cout<<"Yes";
    }
    else{
        cout<<"No";
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...