题目背景
落樱缤纷春不待,如果错过了这次机会,可能得等到紫藤绽放的春夏之际才能赏花了。
但是两人依然无心在樱花树下席地而宴。
因为正体不明的灵体在两人面前倏现骤消的飘浮着。
后来才明白这些四处飘浮的正体不明灵体,既非普通幽灵,也不是前阵子出现的怨灵。
这些是神灵。本应超脱为神的灵体。
一般而言,神灵多半居住在神社里,其实它们是随处可见的没有固定型态的灵体。
这些神灵让她们困惑不已。
超乎常人的强烈人欲、想法、恐惧与情感,是神灵出现的原因。一般而言,神灵很少危害人类,如果没有强烈的欲望。例如祈求丰收,或是除厄避邪等,是不会产生神灵的……
小神灵指引着灵梦与魔理沙深入命莲寺的地底,与千年复苏的敌人交手。从命莲寺墓地到莲池中央的梦殿大祀庙,从彷徨的亡灵到极具传说色彩的圣德太子,从欲望加速到小小的欲望星空,一切都显得那么不可思议。
「死亡之后,才能得到更加绚烂的重生。」
题目描述
【这是一道交互题】
定义 f(x) 表示严格大于 x 的最小的完全平方数,定义 g(x) 为小于等于 x 的最大的完全平方数。例如,f(1)=f(2)=g(4)=g(8)=4。
一个正整数是“可爱”的,当且仅当 x−g(x)<f(x)−x,例如,1,5,11 是可爱的正整数,而 3,8,15 不是。
为了倾听小神灵的愿望,主角组需要向神子询问。小神灵有一个最喜欢的正整数 a,神子可以根据灵梦给出的 x(x∈[0,109]),向小神灵询问,而小神灵只能回答她,a+x 是不是可爱的正整数(cute number)。
请通过适当的询问找出 a。
输入格式
第一行有一个正整数 T,表示数据组数。每一组之间互相独立。
接下来,对于每一组数据,你将可以进行以下两种操作:
- ? x:询问 a+x 是否是 cute number。要注意,x 的值应当在 [0,109] 以内。对于正确的询问,交互库会返回一个数字 1 或者 0,表示 a+x 是/不是 cute number。
- ! a:报告你发现的 a。如果你给出的 a 正确,该组数据结束。注意:报告操作不计入询问操作的总次数。
如果你的询问次数超过了 100,或者 x 不符合数据范围,或者你报告的 a 不正确,交互库会返回一个数字 −1。此时你应当立即结束程序,否则可能发生不可预知的错误。
提示
样例解释
样例当中的过程仅供参考。
样例当中,a=114514,是 cute number(因为 3382≤114514<3392,而 114514−3382=270<3392−114514=407)。
同样地,a+0,a+1,a+2,a+3,a+10 均为 cute number。而 a+100=114614 不是 cute number,因为 3382≤114614<3392,而 114614−3382=370≥3392−114614=307。
数据范围及约定
Subtask1324a≤10010910121012T≤1002×1032×1032×103特殊性质−−A−分值10203040特殊性质 A:保证 a 是 cute number。
对于全部数据,保证 1≤a≤1012。你发起的询问当中,x 的值应当在 [0,109] 以内。
此外,你每个测试点的得分还与该测试点所有询问次数的最大值有关。具体而言,设某个测试点你询问操作一共进行了 max_count 次。
- 若 max_count<64,你将获得该测试点 100% 的分数;
- 若 64≤max_count<81,你将获得该测试点 50% 的分数;
- 若 81≤max_count<100,你将获得该测试点 20% 的分数;
- 若 max_count≥100,你将不能获得该测试点的分数。