代码如下
#include<iostream>
#include<cstdio>
using namespace std;
int main() {
for (long long l = 1, r = 1000000000; l != r;) {
int mid = (l + r) / 2;
std::cout << mid << std::endl;
int in;
cin >> in;
if (in == 1) {
r = mid - 1;
}
else if (in == -1) {
l = mid + 1;
}
else if (in == 0) {
return 0;
}
}
}
不明白为什么二分都会TLE