제출 #433978

#제출 시각아이디문제언어결과실행 시간메모리
433978KoDHotter Colder (IOI10_hottercolder)C++17
78 / 100
1140 ms8124 KiB
#include <bits/stdc++.h> #include "grader.h" int rand() { static std::default_random_engine gen(std::chrono::system_clock::now().time_since_epoch().count()); static std::uniform_int_distribution<int> rng(0, 1); return rng(gen); } int HC(int N) { int l = 1, r = N, x = 1; Guess(x); while (l < r) { if (rand()) { if (x == l) { const int t = Guess(r); x = r; if (t == 0) return (l + r) / 2; else if (t == 1) l = (l + r) / 2 + 1; else r = (l + r - 1) / 2; } else { if (x != r) { Guess(r); } const int t = Guess(l); x = l; if (t == 0) return (l + r) / 2; else if (t == 1) r = (l + r - 1) / 2; else l = (l + r) / 2 + 1; } } else { if (x == r) { const int t = Guess(l); x = l; if (t == 0) return (l + r) / 2; else if (t == 1) r = (l + r - 1) / 2; else l = (l + r) / 2 + 1; } else { if (x != l) { Guess(l); } const int t = Guess(r); x = r; if (t == 0) return (l + r) / 2; else if (t == 1) l = (l + r) / 2 + 1; else r = (l + r - 1) / 2; } } } return l; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...