Submission #347601

# Submission time Handle Problem Language Result Execution time Memory
347601 2021-01-13T09:03:12 Z beksultan04 The Big Prize (IOI17_prize) C++14
90 / 100
100 ms 512 KB
#include "prize.h"
//#include "grader.cpp"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int,int>
#define OK puts("OK");
#define NO puts("NO");
#define YES puts("YES");
#define fr first
#define sc second
#define ret return
#define scanl(a) scanf("%lld",&a);
#define scanll(a,b) scanf("%lld %lld",&a, &b);
#define scanlll(a,b,c) scanf("%lld %lld %lld",&a,&b,&c);
#define scan1(a) scanf("%d",&a);
#define scan2(a,b) scanf("%d %d",&a, &b);
#define scan3(a,b,c) scanf("%d %d %d",&a,&b,&c);
#define all(s) s.begin(),s.end()
#define allr(s) s.rbegin()Ñ,s.rend()
#define pb push_back
#define sz(v) (int)v.size()
#define endi puts("");
#define eps 1e-12
const int N = 3e5+12,INF=1e9+7;
int find_best(int n) {
    int mx=0,i;
    for (i=0;i<n;++i){
        vector <int> a = ask(i);
        if (!(a[0]+a[1]))ret i;
        mx = max(a[0]+a[1],mx);
        if (mx != a[0]+a[1])continue;



        int l = i,r = n-1;
        while (r >= l){

            int m = l+r>>1;
            vector <int> b = ask(m);
            if (!(b[0]+b[1]))ret m;
            if (b==a){
                l = m+1;
                i = m;
            }
            else {
                r = m-1;
            }
        }
    }

}







Compilation message

prize.cpp: In function 'int find_best(int)':
prize.cpp:39:22: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
   39 |             int m = l+r>>1;
      |                     ~^~
prize.cpp:52:1: warning: control reaches end of non-void function [-Wreturn-type]
   52 | }
      | ^
# Verdict Execution time Memory Grader output
1 Correct 1 ms 492 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 380 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 492 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 364 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 364 KB Output is correct
2 Correct 1 ms 364 KB Output is correct
3 Correct 1 ms 492 KB Output is correct
4 Correct 1 ms 364 KB Output is correct
5 Correct 1 ms 364 KB Output is correct
6 Correct 1 ms 364 KB Output is correct
7 Correct 1 ms 364 KB Output is correct
8 Correct 1 ms 364 KB Output is correct
9 Correct 1 ms 492 KB Output is correct
10 Correct 1 ms 364 KB Output is correct
11 Correct 3 ms 364 KB Output is correct
12 Correct 1 ms 364 KB Output is correct
13 Correct 7 ms 380 KB Output is correct
14 Correct 4 ms 364 KB Output is correct
15 Correct 13 ms 364 KB Output is correct
16 Partially correct 39 ms 368 KB Partially correct - number of queries: 7330
17 Correct 1 ms 364 KB Output is correct
18 Partially correct 66 ms 364 KB Partially correct - number of queries: 8608
19 Correct 1 ms 364 KB Output is correct
20 Correct 22 ms 364 KB Output is correct
21 Correct 30 ms 364 KB Output is correct
22 Correct 4 ms 492 KB Output is correct
23 Correct 1 ms 364 KB Output is correct
24 Correct 1 ms 492 KB Output is correct
25 Correct 27 ms 492 KB Output is correct
26 Correct 42 ms 364 KB Output is correct
27 Correct 1 ms 364 KB Output is correct
28 Partially correct 65 ms 364 KB Partially correct - number of queries: 8180
29 Partially correct 53 ms 364 KB Partially correct - number of queries: 6194
30 Partially correct 70 ms 364 KB Partially correct - number of queries: 8535
31 Correct 1 ms 364 KB Output is correct
32 Correct 4 ms 364 KB Output is correct
33 Correct 1 ms 364 KB Output is correct
34 Correct 22 ms 512 KB Output is correct
35 Correct 2 ms 364 KB Output is correct
36 Correct 15 ms 364 KB Output is correct
37 Correct 2 ms 364 KB Output is correct
38 Correct 1 ms 364 KB Output is correct
39 Correct 52 ms 364 KB Output is correct
40 Partially correct 86 ms 364 KB Partially correct - number of queries: 7289
41 Partially correct 37 ms 364 KB Partially correct - number of queries: 5146
42 Partially correct 61 ms 364 KB Partially correct - number of queries: 5146
43 Correct 46 ms 364 KB Output is correct
44 Correct 29 ms 364 KB Output is correct
45 Correct 28 ms 364 KB Output is correct
46 Correct 1 ms 492 KB Output is correct
47 Correct 45 ms 364 KB Output is correct
48 Partially correct 80 ms 364 KB Partially correct - number of queries: 6360
49 Correct 9 ms 364 KB Output is correct
50 Partially correct 53 ms 492 KB Partially correct - number of queries: 8597
51 Correct 30 ms 364 KB Output is correct
52 Correct 1 ms 364 KB Output is correct
53 Correct 1 ms 492 KB Output is correct
54 Correct 43 ms 364 KB Output is correct
55 Correct 1 ms 364 KB Output is correct
56 Partially correct 71 ms 364 KB Partially correct - number of queries: 8605
57 Partially correct 67 ms 364 KB Partially correct - number of queries: 6271
58 Partially correct 63 ms 364 KB Partially correct - number of queries: 6379
59 Partially correct 60 ms 364 KB Partially correct - number of queries: 5146
60 Correct 62 ms 364 KB Output is correct
61 Correct 3 ms 364 KB Output is correct
62 Correct 1 ms 364 KB Output is correct
63 Correct 2 ms 364 KB Output is correct
64 Correct 1 ms 364 KB Output is correct
65 Correct 1 ms 364 KB Output is correct
66 Correct 5 ms 364 KB Output is correct
67 Correct 1 ms 492 KB Output is correct
68 Correct 1 ms 364 KB Output is correct
69 Correct 6 ms 364 KB Output is correct
70 Correct 1 ms 364 KB Output is correct
71 Partially correct 91 ms 364 KB Partially correct - number of queries: 8735
72 Correct 5 ms 364 KB Output is correct
73 Partially correct 79 ms 364 KB Partially correct - number of queries: 8630
74 Partially correct 68 ms 364 KB Partially correct - number of queries: 8677
75 Correct 2 ms 364 KB Output is correct
76 Partially correct 40 ms 364 KB Partially correct - number of queries: 7446
77 Partially correct 72 ms 364 KB Partially correct - number of queries: 8641
78 Correct 8 ms 364 KB Output is correct
79 Correct 44 ms 364 KB Output is correct
80 Partially correct 100 ms 364 KB Partially correct - number of queries: 8603
81 Partially correct 96 ms 364 KB Partially correct - number of queries: 8607
82 Partially correct 86 ms 364 KB Partially correct - number of queries: 8541
83 Correct 2 ms 364 KB Output is correct
84 Partially correct 62 ms 364 KB Partially correct - number of queries: 7038
85 Partially correct 66 ms 364 KB Partially correct - number of queries: 8623
86 Partially correct 100 ms 364 KB Partially correct - number of queries: 8189
87 Correct 6 ms 364 KB Output is correct
88 Partially correct 63 ms 364 KB Partially correct - number of queries: 7711
89 Partially correct 70 ms 364 KB Partially correct - number of queries: 8120
90 Correct 2 ms 364 KB Output is correct
91 Correct 35 ms 364 KB Output is correct
92 Correct 1 ms 364 KB Output is correct
93 Correct 7 ms 364 KB Output is correct
94 Correct 7 ms 364 KB Output is correct
95 Correct 4 ms 364 KB Output is correct
96 Correct 3 ms 364 KB Output is correct
97 Correct 1 ms 492 KB Output is correct