Submission #937828

# Submission time Handle Problem Language Result Execution time Memory
937828 2024-03-04T14:57:24 Z Alcabel The Big Prize (IOI17_prize) C++17
90 / 100
55 ms 668 KB
#include <bits/stdc++.h>
#include "prize.h"
using namespace std;

const int need = 473;

int find_best(int n) {
    int mxcnt = 0;
    vector<int> res;
    int nonmax = 0;
    for (int i = 0; i < min(n, need); ++i) {
        res = ask(i);
        if (res[0] + res[1] == 0) {
            return i;
        }
        if (res[0] + res[1] > mxcnt) {
            mxcnt = res[0] + res[1];
            nonmax = i;
        } else if (res[0] + res[1] < mxcnt) {
            ++nonmax;
        }
    }
    int last = need - 1;
    while (true) {
        int left = last, right = n;
        while (right - left > 1) {
            int mid = left + (right - left) / 2;
            res = ask(mid);
            if (res[0] + res[1] == 0) {
                return mid;
            }
            if (res[0] + res[1] < mxcnt) {
                right = mid;
            } else if (res[0] == nonmax) {
                left = mid;
            } else {
                right = mid;
            }
        }
        assert(right != n);
        last = right;
        ++nonmax;
    }
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 596 KB Output is correct
2 Correct 2 ms 344 KB Output is correct
3 Correct 2 ms 344 KB Output is correct
4 Correct 2 ms 600 KB Output is correct
5 Correct 2 ms 344 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 2 ms 344 KB Output is correct
8 Correct 2 ms 344 KB Output is correct
9 Correct 2 ms 344 KB Output is correct
10 Correct 2 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 344 KB Output is correct
2 Correct 2 ms 344 KB Output is correct
3 Correct 2 ms 344 KB Output is correct
4 Correct 2 ms 344 KB Output is correct
5 Correct 2 ms 344 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 2 ms 344 KB Output is correct
8 Correct 2 ms 600 KB Output is correct
9 Correct 3 ms 340 KB Output is correct
10 Correct 3 ms 540 KB Output is correct
11 Correct 4 ms 344 KB Output is correct
12 Correct 2 ms 344 KB Output is correct
13 Correct 4 ms 344 KB Output is correct
14 Correct 3 ms 344 KB Output is correct
15 Correct 6 ms 428 KB Output is correct
16 Partially correct 34 ms 344 KB Partially correct - number of queries: 7003
17 Correct 2 ms 344 KB Output is correct
18 Partially correct 35 ms 344 KB Partially correct - number of queries: 8119
19 Correct 2 ms 344 KB Output is correct
20 Correct 9 ms 344 KB Output is correct
21 Correct 16 ms 344 KB Output is correct
22 Correct 5 ms 344 KB Output is correct
23 Correct 2 ms 344 KB Output is correct
24 Correct 2 ms 344 KB Output is correct
25 Correct 22 ms 668 KB Output is correct
26 Correct 21 ms 340 KB Output is correct
27 Correct 2 ms 344 KB Output is correct
28 Partially correct 55 ms 344 KB Partially correct - number of queries: 7778
29 Partially correct 26 ms 344 KB Partially correct - number of queries: 6000
30 Partially correct 35 ms 344 KB Partially correct - number of queries: 8056
31 Correct 2 ms 344 KB Output is correct
32 Correct 3 ms 344 KB Output is correct
33 Correct 0 ms 340 KB Output is correct
34 Correct 11 ms 344 KB Output is correct
35 Correct 3 ms 344 KB Output is correct
36 Correct 10 ms 344 KB Output is correct
37 Correct 2 ms 344 KB Output is correct
38 Correct 2 ms 424 KB Output is correct
39 Correct 22 ms 344 KB Output is correct
40 Partially correct 25 ms 344 KB Partially correct - number of queries: 6962
41 Partially correct 31 ms 344 KB Partially correct - number of queries: 5065
42 Partially correct 23 ms 344 KB Partially correct - number of queries: 5065
43 Correct 18 ms 344 KB Output is correct
44 Correct 14 ms 344 KB Output is correct
45 Correct 11 ms 344 KB Output is correct
46 Correct 2 ms 344 KB Output is correct
47 Correct 18 ms 596 KB Output is correct
48 Partially correct 27 ms 344 KB Partially correct - number of queries: 6143
49 Correct 4 ms 344 KB Output is correct
50 Partially correct 36 ms 344 KB Partially correct - number of queries: 8108
51 Correct 14 ms 344 KB Output is correct
52 Correct 2 ms 344 KB Output is correct
53 Correct 2 ms 344 KB Output is correct
54 Correct 19 ms 344 KB Output is correct
55 Correct 2 ms 344 KB Output is correct
56 Partially correct 33 ms 340 KB Partially correct - number of queries: 8116
57 Partially correct 24 ms 596 KB Partially correct - number of queries: 6066
58 Partially correct 34 ms 596 KB Partially correct - number of queries: 6161
59 Partially correct 19 ms 344 KB Partially correct - number of queries: 5065
60 Correct 18 ms 344 KB Output is correct
61 Correct 2 ms 344 KB Output is correct
62 Correct 2 ms 344 KB Output is correct
63 Correct 2 ms 344 KB Output is correct
64 Correct 2 ms 344 KB Output is correct
65 Correct 2 ms 344 KB Output is correct
66 Correct 13 ms 432 KB Output is correct
67 Correct 2 ms 344 KB Output is correct
68 Correct 2 ms 344 KB Output is correct
69 Correct 13 ms 344 KB Output is correct
70 Correct 2 ms 344 KB Output is correct
71 Partially correct 34 ms 344 KB Partially correct - number of queries: 8280
72 Correct 4 ms 344 KB Output is correct
73 Partially correct 32 ms 344 KB Partially correct - number of queries: 8172
74 Partially correct 50 ms 344 KB Partially correct - number of queries: 8209
75 Correct 4 ms 344 KB Output is correct
76 Partially correct 28 ms 344 KB Partially correct - number of queries: 7113
77 Partially correct 44 ms 344 KB Partially correct - number of queries: 8138
78 Correct 4 ms 344 KB Output is correct
79 Correct 18 ms 344 KB Output is correct
80 Partially correct 39 ms 344 KB Partially correct - number of queries: 8150
81 Partially correct 46 ms 344 KB Partially correct - number of queries: 8148
82 Partially correct 36 ms 344 KB Partially correct - number of queries: 8058
83 Correct 2 ms 344 KB Output is correct
84 Partially correct 32 ms 344 KB Partially correct - number of queries: 6697
85 Partially correct 38 ms 344 KB Partially correct - number of queries: 8111
86 Correct 3 ms 344 KB Output is correct
87 Correct 2 ms 344 KB Output is correct
88 Correct 2 ms 344 KB Output is correct
89 Correct 2 ms 344 KB Output is correct
90 Correct 2 ms 344 KB Output is correct
91 Correct 2 ms 344 KB Output is correct
92 Correct 2 ms 344 KB Output is correct
93 Correct 3 ms 344 KB Output is correct
94 Correct 4 ms 344 KB Output is correct
95 Correct 3 ms 344 KB Output is correct
96 Correct 3 ms 344 KB Output is correct
97 Correct 2 ms 344 KB Output is correct