Submission #740536

#TimeUsernameProblemLanguageResultExecution timeMemory
740536alexddRemittance (JOI19_remittance)C++17
0 / 100
1080 ms212 KiB
#include<bits/stdc++.h>
using namespace std;
int dif[1000005];
int n;
bool notdone()
{
   for(int i=0;i<n;i++)
       if(dif[i]>0)
         return 1;
   return 0;
}
signed main()
{
   cin>>n;
   int a,b;
   for(int i=0;i<n;i++)
   {
       cin>>a>>b;
       dif[i]=a-b;
   }
   while(notdone())
   {
       for(int i=0;i<n;i++)
           if(dif[i]>0)
              dif[(i+1)%n]+=dif[i]/2, dif[i]%=2;
   }
   for(int i=0;i<n;i++)
   {
      if(dif[i]!=0)
      {
           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...