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>
typedef long long ll;
int HC(int N){
ll l = 1, r = N + 1;
while (l + 3 < r){
int mid = (l+r)/2;
//std::cout<<l<<' '<<r<<'\n';
int mid2 = (l+mid)/2;
Guess((l+r)/2);
//std::cout<<mid2<<' ';
int res = Guess(mid2);
//std::cout<<res<<'\n';
if (res == 1) r = mid;
else if (res == -1) l = mid2;
else return (mid+mid2)/2;
}
//std::cout<<l<<' ';
int cur = l;
Guess(l);
if (l+1 <= N && Guess(l+1) == 1) cur = l+1;
Guess(cur);
if (l+2 <= N && Guess(l+2) == 1) cur = l+2;
Guess(cur);
if (l+3 <= N && Guess(l+3) == 1) cur = l+3;
//std::cout<<l<<'\n';
return cur;
}
# | 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... |