제출 #757386

#제출 시각아이디문제언어결과실행 시간메모리
757386alexdd송금 (JOI19_remittance)C++17
100 / 100
857 ms28552 KiB
#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
int a[1000005];
int b[1000005];
bool running()
{
    for(int i=0;i<n;i++)
        if(min((a[i]-b[i]+1)/2, a[i]/2)>0)
            return 1;
    return 0;
}
signed main()
{
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>a[i]>>b[i];
    }
    while(running())
    {
        for(int i=0;i<n;i++)
        {
            if(min((a[i]-b[i]+1)/2, a[i]/2)>0)
            {
                int x = min((a[i]-b[i]+1)/2, a[i]/2);
                a[i] -= 2*x;
                a[(i+1)%n] += x;
            }
        }
    }
    bool good=1;
    for(int i=0;i<n;i++)
        if(a[i]!=b[i])
            good=0;
    if(good)
        cout<<"Yes";
    else
        cout<<"No";
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...