Submission #357672

#TimeUsernameProblemLanguageResultExecution timeMemory
357672urd05Colors (BOI20_colors)C++14
22 / 100
7 ms512 KiB
#include <bits/stdc++.h>
using namespace std;

int main(void) {
    long long n;
    scanf("%lld",&n);
    long long one=(n-1)/4+1;
    long long two=(3*n-1)/4+1;
    printf("? %lld\n",two);
    fflush(stdout);
    int got;
    scanf("%d",&got);
    printf("? %lld\n",one);
    fflush(stdout);
    scanf("%d",&got);
    long long ret;
    if (got==0) {
        int l=one-1+n-two;
        int d=two-one;
        ret=n;
        for(int i=0;i<l;i++) {
            long long nt=(two<one?two-1:two+1);
            printf("? %lld\n",nt);
            fflush(stdout);
            scanf("%d",&got);
            if (got==1) {
                ret=d+i+1;
                break;
            }
            two=one;
            one=nt;
        }
    }
    else {
        int l=two-one;
        ret=1;
        for(int i=l-1;i>0;i--) {
            int nt=(two<one?two+1:two-1);
            printf("? %lld\n",nt);
            fflush(stdout);
            scanf("%d",&got);
            if (got==0) {
                ret=i+1;
                break;
            }
            two=one;
            one=nt;
        }
    }
    printf("= %lld\n",ret);
    fflush(stdout);
}

Compilation message (stderr)

Colors.cpp: In function 'int main()':
Colors.cpp:39:26: warning: format '%lld' expects argument of type 'long long int', but argument 2 has type 'int' [-Wformat=]
   39 |             printf("? %lld\n",nt);
      |                       ~~~^    ~~
      |                          |    |
      |                          |    int
      |                          long long int
      |                       %d
Colors.cpp:6:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    6 |     scanf("%lld",&n);
      |     ~~~~~^~~~~~~~~~~
Colors.cpp:12:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   12 |     scanf("%d",&got);
      |     ~~~~~^~~~~~~~~~~
Colors.cpp:15:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   15 |     scanf("%d",&got);
      |     ~~~~~^~~~~~~~~~~
Colors.cpp:25:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   25 |             scanf("%d",&got);
      |             ~~~~~^~~~~~~~~~~
Colors.cpp:41:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   41 |             scanf("%d",&got);
      |             ~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...