Submission #347651

# Submission time Handle Problem Language Result Execution time Memory
347651 2021-01-13T09:55:16 Z beksultan04 The Big Prize (IOI17_prize) C++14
90 / 100
97 ms 492 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[1]){
                n = m;
            }
            if (!b[0] || a == b){
                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:55:1: warning: control reaches end of non-void function [-Wreturn-type]
   55 | }
      | ^
# 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 364 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 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 368 KB Output is correct
9 Correct 1 ms 364 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 384 KB Output is correct
13 Correct 6 ms 364 KB Output is correct
14 Correct 4 ms 364 KB Output is correct
15 Correct 12 ms 364 KB Output is correct
16 Partially correct 38 ms 492 KB Partially correct - number of queries: 7307
17 Correct 1 ms 364 KB Output is correct
18 Partially correct 64 ms 364 KB Partially correct - number of queries: 8595
19 Correct 1 ms 364 KB Output is correct
20 Correct 12 ms 492 KB Output is correct
21 Correct 28 ms 364 KB Output is correct
22 Correct 7 ms 492 KB Output is correct
23 Correct 1 ms 364 KB Output is correct
24 Correct 1 ms 364 KB Output is correct
25 Correct 41 ms 364 KB Output is correct
26 Correct 32 ms 364 KB Output is correct
27 Correct 1 ms 364 KB Output is correct
28 Partially correct 61 ms 364 KB Partially correct - number of queries: 8021
29 Partially correct 50 ms 364 KB Partially correct - number of queries: 6176
30 Partially correct 71 ms 364 KB Partially correct - number of queries: 8509
31 Correct 1 ms 364 KB Output is correct
32 Correct 5 ms 364 KB Output is correct
33 Correct 0 ms 364 KB Output is correct
34 Correct 28 ms 364 KB Output is correct
35 Correct 3 ms 364 KB Output is correct
36 Correct 16 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 34 ms 364 KB Output is correct
40 Partially correct 66 ms 364 KB Partially correct - number of queries: 7202
41 Partially correct 38 ms 364 KB Partially correct - number of queries: 5121
42 Partially correct 47 ms 364 KB Partially correct - number of queries: 5121
43 Correct 37 ms 364 KB Output is correct
44 Correct 34 ms 364 KB Output is correct
45 Correct 22 ms 364 KB Output is correct
46 Correct 1 ms 364 KB Output is correct
47 Correct 36 ms 364 KB Output is correct
48 Partially correct 54 ms 364 KB Partially correct - number of queries: 6346
49 Correct 6 ms 364 KB Output is correct
50 Partially correct 76 ms 364 KB Partially correct - number of queries: 8532
51 Correct 29 ms 364 KB Output is correct
52 Correct 1 ms 492 KB Output is correct
53 Correct 2 ms 364 KB Output is correct
54 Correct 30 ms 364 KB Output is correct
55 Correct 1 ms 364 KB Output is correct
56 Partially correct 73 ms 492 KB Partially correct - number of queries: 8592
57 Partially correct 50 ms 364 KB Partially correct - number of queries: 6254
58 Partially correct 83 ms 364 KB Partially correct - number of queries: 6338
59 Partially correct 43 ms 364 KB Partially correct - number of queries: 5121
60 Correct 55 ms 364 KB Output is correct
61 Correct 2 ms 364 KB Output is correct
62 Correct 1 ms 368 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 1 ms 364 KB Output is correct
67 Correct 1 ms 364 KB Output is correct
68 Correct 1 ms 364 KB Output is correct
69 Correct 5 ms 364 KB Output is correct
70 Correct 1 ms 364 KB Output is correct
71 Partially correct 74 ms 364 KB Partially correct - number of queries: 8264
72 Correct 9 ms 364 KB Output is correct
73 Partially correct 68 ms 364 KB Partially correct - number of queries: 8166
74 Partially correct 68 ms 364 KB Partially correct - number of queries: 8210
75 Correct 2 ms 364 KB Output is correct
76 Partially correct 61 ms 364 KB Partially correct - number of queries: 7047
77 Partially correct 83 ms 364 KB Partially correct - number of queries: 8560
78 Correct 8 ms 364 KB Output is correct
79 Correct 46 ms 364 KB Output is correct
80 Partially correct 70 ms 364 KB Partially correct - number of queries: 8603
81 Partially correct 88 ms 364 KB Partially correct - number of queries: 8581
82 Partially correct 97 ms 364 KB Partially correct - number of queries: 8516
83 Correct 2 ms 364 KB Output is correct
84 Partially correct 46 ms 364 KB Partially correct - number of queries: 7012
85 Partially correct 79 ms 364 KB Partially correct - number of queries: 8566
86 Correct 18 ms 364 KB Output is correct
87 Correct 2 ms 492 KB Output is correct
88 Correct 19 ms 364 KB Output is correct
89 Correct 17 ms 364 KB Output is correct
90 Correct 2 ms 492 KB Output is correct
91 Correct 12 ms 364 KB Output is correct
92 Correct 1 ms 364 KB Output is correct
93 Correct 5 ms 364 KB Output is correct
94 Correct 3 ms 364 KB Output is correct
95 Correct 6 ms 364 KB Output is correct
96 Correct 5 ms 364 KB Output is correct
97 Correct 1 ms 364 KB Output is correct