Submission #225403

#TimeUsernameProblemLanguageResultExecution timeMemory
225403MKopchevRemittance (JOI19_remittance)C++14
100 / 100
430 ms28664 KiB
#include<bits/stdc++.h>
using namespace std;
const int nmax=1e6+42;

int n;

int inp[nmax],outp[nmax];

void print(int ok)
{
    if(ok)printf("Yes\n");
    else printf("No\n");
    exit(0);
}
int main()
{
    scanf("%i",&n);

    int mx_a=0,mx_b=0;

    for(int i=1;i<=n;i++)
    {
        scanf("%i%i",&inp[i],&outp[i]);
        mx_a=max(mx_a,inp[i]);
        mx_b=max(mx_b,outp[i]);
    }

    if(mx_b==0)
    {
        if(mx_a==0)print(1);
        print(0);
    }

    for(int step=1;step<=50;step++)
        for(int i=1;i<=n;i++)
        {
            int nxt=i+1;
            if(nxt>n)nxt=nxt-n;

            if(inp[i]>outp[i])
            {
                int send=(inp[i]-outp[i]+1)/2;

                inp[i]=inp[i]-2*send;
                inp[nxt]=inp[nxt]+send;
            }
        }


    for(int i=1;i<=n;i++)
        if(inp[i]!=outp[i])print(0);
    print(1);
    return 0;
}

Compilation message (stderr)

remittance.cpp: In function 'int main()':
remittance.cpp:17:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%i",&n);
     ~~~~~^~~~~~~~~
remittance.cpp:23:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%i%i",&inp[i],&outp[i]);
         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...