Submission #1143708

#TimeUsernameProblemLanguageResultExecution timeMemory
1143708sanoHotter Colder (IOI10_hottercolder)C++20
50 / 100
401 ms8240 KiB
#include "grader.h"
#include<iostream>
#include<vector>

using namespace std;

int ries1(int l, int r) {
	if (r - l < 3) {
		Guess(l);
		int x = Guess(r);
		if (x == 0) return (l + r) / 2;
		if (x == -1) return l;
		if (x == 1) return r;
	}
	Guess(l);
	int p2 = l + ((r - l) / 3) * 2;
	int x = Guess(p2);
	if (x == -1) {
		return ries1(l, (l+p2)/2 - ((l+p2) % 2 == 0));
	}
	if (x == 1) {
		x = Guess(p2 + 1);
		if (x == -1) return ries1((l + p2) / 2 + 1, p2);
		if (x == 1) return ries1(p2 + 1, r);
	}
	if (x == 0) {
		return (l + p2) / 2;
	}
	return -1;
}

int HC(int n) {
	return ries1(1, n);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...