# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
598635 | Mounir | Hotter Colder (IOI10_hottercolder) | C++14 | 0 ms | 0 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>
#define all(v) v.begin(), v.end()
#define chmax(x, v) x = max(x, v)
#define chmin(x, v) x = min(x, v)
#define pb push_back
#define pii pair<int, int>
#define sz(x) (int)x.size()
#define x first
#define y second
//#define int long long
using namespace std;
int HC(int N){
int l = 1, r = N, prev = (l + r)/2 + 1;
int ans = Guess(prev);
while (r > l){
int mid = (l + r)/2;
int delta = prev - mid;
int mtn = mid - delta;
if (mtn < 1 || mtn > N){
Guess(mid - 1);
prev = mid - 1;
continue;
}
/* cout << l << " " << r << " " << mid << endl;
cout << prev << " " << mtn << endl;*/
ans = Guess(mtn);
if ((ans >= 0)^(prev > mtn))
l = mid;
else
r = mid - 1;
prev = mtn;
}
return l;
}
signed main(){
int N; cin >> N;
cout << HC(N) << endl;
return 0;
}