这是一道交互题。
SEUSEUSEU最菜的 dd 有一个分段函数:
其中 k,a,bk,a,bk,a,b均为未知数。
他需要你猜测出kkk和aaa的值,不过,他也不会为难你,你可以问他一些问题后再猜。
在每组数据中,你最多可以询问31次,询问方式如下:
31
? x1 x2
当你确定答案后,你可以以如下方式给出答案:
! k a
打印查询后,不要忘记输出行尾并刷新输出。否则,您将得到超出时间限制。要做到这一点,请使用:
fflush(stdout)
cout.flush()
System.out.flush()
flush(output)
stdout.flush()
第一行,一个整数t(1≤t≤103)t(1\le t\le 10^3)t(1≤t≤103),代表数据组数。
对于每组数据: 输入仅有两个数字n,mn,mn,m 代表函数的定义域。
保证0≤n<m≤1090\le n<m\le 10^90≤n<m≤109 且 2≤m−n≤1092 \le m-n\le 10^92≤m−n≤109 , k,ak,ak,a均为正整数且 1≤k≤1061\le k \le 10^61≤k≤106 , n≤a<mn \le a < mn≤a<m。
保证 n,mn,mn,m为非负整数。
对于每组数据,按照交互方式输入输出即可。
输入样例:
1 1 4 1 0
输出样例:
? 1 3 ? 2 2 ! 1 2
样例解释: dd 的分段函数为:
所以 k=1,a=2k=1,a=2k=1,a=2 。
如果你的询问次数超过31次或者输出不合法或者答案错误,会被判做 Partilly Correct 或 Time Limit Exceeded 。
Partilly Correct
Time Limit Exceeded
输入输出样例仅能代表本题的交互方式,与本题目的做法没有任何关联。