# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1074493 | DeathIsAwe | Hotter Colder (IOI10_hottercolder) | C++17 | 4818 ms | 262144 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "grader.h"
#include <bits/stdc++.h>
using namespace std;
int ans = -1;
void destroy(int top, int bottom, int previous) {
cout << top << ' ' << bottom << ' ' << previous << '\n';
if (top - bottom == 0) {
ans = top;
return;
} else if (top - bottom == 1) {
int sussy;
if (previous == -1) {
Guess(top); sussy = Guess(bottom);
} else if (previous == top) {
sussy = Guess(bottom);
} else {
sussy = -Guess(top);
}
if (sussy == 1) {
ans = bottom;
} else {
ans = top;
}
return;
}
int mid = (top + bottom) / 2;
int midleft = (bottom + mid) / 2;
int midright = (mid + 1 + top) / 2;
if (previous == -1) {
int midleftans = Guess(midleft), midrightans = Guess(midright);
if (midrightans == 0) {
ans = (midleft + midright) / 2;
} else if (midrightans == 1) {
destroy(top, mid + 1, -1);
} else {
destroy(mid, bottom, -1);
}
}
}
int HC(int n){
destroy(n, 1, -1);
cout << ans << '\n';
return ans;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |