이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "grader.h"
int HC(int N)
{
int low = 1;
int high = N;
int guess = high; // Primeiro palpite é N
int previous_guess = 0;
while (low < high)
{
int response = Guess(guess);
if (response == 1)
{
if (previous_guess > guess)
high = (guess + high) / 2;
if (previous_guess < guess)
low = (guess + low) / 2;
}
else if (response == -1)
{
if (previous_guess > guess)
low = (guess + low) / 2;
if (previous_guess < guess)
high = (guess + high) / 2;
}
previous_guess = guess;
if (response == 0 && guess == previous_guess) // Casos especiais
guess = guess + 1;
if (response != 0) // Padrão
guess = (low + high) / 2;
}
return low;
}
# | 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... |