제출 #201536

#제출 시각아이디문제언어결과실행 시간메모리
201536luciocfHotter Colder (IOI10_hottercolder)C++14
78 / 100
782 ms8312 KiB
#include <bits/stdc++.h> #include "grader.h" using namespace std; int vez; int HC(int n) { if (n == 1) return 1; int ini = 1, fim = n; int ant = 0, lado = 0; bool vez = 0; while (ini < fim) { if (fim-ini == 1) { if (lado == 0 || lado != ant) { Guess(ini); int g = Guess(fim); return (g == -1 ? ini : fim); } if (lado == 1) return (Guess(fim) == -1 ? ini : fim); else return (Guess(ini) == -1 ? fim : ini); } int g; if (lado == 0 || lado != ant) { if (vez == 0) { Guess(ini); g = Guess(fim); ant = 2; vez = 1; } else { Guess(fim); g = Guess(ini); ant = 1; vez = 0; } } else if (lado == 1) { g = Guess(fim); ant = 2; } else { g = Guess(ini); ant = 1; } if (g == 0) return (ini+fim)/2; if (g == 1) { if (ant == 2) ini = (ini+fim)/2 + 1, lado = 2; else { int pre = fim; fim = (ini+fim)/2; if ((ini+pre)%2 == 0) fim--; lado = 1; } } else { if (ant == 1) ini = (ini+fim)/2 + 1, lado = 2; else { int pre = fim; fim = (ini+fim)/2; if ((ini+pre)%2 == 0) fim--; lado = 1; } } } return ini; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...