2019 GDUT 新生 专题Ⅰ H题

H - 二分+交互 Gym - 101375H

题目
题目链接
题目大意就是要用刷新输出的方式进行交互。
思路:用二分的方式保证在50次交互内找到答案。
代码

#include <cstdio>
#include<iostream>
using namespace std;
const int maxn=1e9;
int main(){
	int left=1,right=maxn,mid;
	for(int i=0;i<50;i++){
		mid=(left+right)/2;
		printf("Q %d\n",mid);
		cout.flush();
		char a;
		scanf("%c",&a);
		getchar();//吸掉回车。 
		if(a=='<'){
			right=mid-1;//只等于mid的话会wa,估计是题目测试数据很刁钻,没法在50次内给出答案。下面同理。 
		}
		else if(a=='>'){
			left=mid+1;
		}
		else if(a=='=')break;
	}
	return 0;
}
发布了32 篇原创文章 · 获赞 0 · 访问量 652

猜你喜欢

转载自blog.csdn.net/weixin_45794203/article/details/103963661