#dwango2017finalc. [dwango2017final_c]ドワンGo

[dwango2017final_c]ドワンGo

问题文

喜欢手机游戏的小孝正在沉迷于最近大热的手机游戏《DoWanGo》。

《DoWanGo》是一款在地图上捕捉隐藏角色"电视小姐"的游戏。

电视小姐只存在于地图上的一个位置,已知电视小姐的位置(xt,yt)(x_t, y_t)满足0xtL0 \leq x_t \leq L0ytL0 \leq y_t \leq L,其中LL为整数。 小孝不知道电视小姐的确切位置,但他可以投掷物品"电视球"到指定的坐标。 当电视球击中电视小姐时,小孝就能捕捉到她。

由于电视球非常小,如果小孝没有精确指定电视小姐的位置,就无法捕捉到她。 然而,由于电视小姐胆小怕生,当投掷位置靠近电视小姐时(即从电视小姐的位置到投掷位置的欧氏距离小于等于RR(包括RR的情况)时), 小孝可以听到电视小姐的惊叫声。

现在,小孝手上有NN个电视球。 为了避免再充值购买更多电视球,小孝希望用这NN个电视球确保能捕捉到电视小姐, 并请求你的帮助来编写一个支持程序。


入出力形式

你可以向小孝指示以实数形式投掷电视球的位置。 例如,如果要使用C/C++代码指示小孝在位置(x,y)(x, y)投掷电视球:

printf("%.9f %.9f\n", x, y); fflush(stdout);

通过这种方式进行指示。 你也可以指定大于LL的值或负数,但是xxyy必须是长度不超过20个字符的字符串。 另外,无法使用指数表示法进行指定。 如果违反了这些条件,将被视为错误回答(Wrong Answer)。

然后,通过以下方式来获取小孝投掷电视球的结果:

scanf("%s", &result);

根据小孝投掷电视球的结果,你会得到以下不同的回答:

  • 当成功捕捉到电视小姐时(即(xt,yt)=(x,y)(x_t,y_t)=(x,y)时),返回"found"。
  • 当无法捕捉到电视小姐,但电视小姐发出声音时(即0<(xtx)2+(yty)2R0 < \sqrt{(x_t-x)^2+(y_t-y)^2} \leq R时),返回"close"。
  • 当无法捕捉到电视小姐,并且电视小姐没有发出声音时(即R<(xtx)2+(yty)2R < \sqrt{(x_t-x)^2+(y_t-y)^2}时),返回"far"。
  • 当小孝投掷了NN个球,或者你指示的坐标无效时,返回"kill"。

在小孝返回"found"或"kill"之前,你可以继续向他指示投掷电视球的位置。 但是,当收到"found"或"kill"回答时,请立即结束程序。


制约条件

  • L=1,000,000L = 1,000,000
  • R=100,000R = 100,000
  • 0xtL0 \leq x_t \leq L
  • 0ytL0 \leq y_t \leq L
  • xtx_t,yty_t为整数
  • 最多可以投掷N=200N = 200次电视球。超过次数将被视为查询限制超过(Query Limit Exceeded)。

部分点

符合以下数据集要求的正确答案将获得25分。

  • 0xt100 \leq x_t \leq 10
  • 0yt100 \leq y_t \leq 10

入出力例

程序输入:

程序输出:

1000001.000000000000 1000000.000000000000

far

-25252.525252525252 52525.252525252525

close

100000.000000000000 -0.000000000001

far

-100000.000000000000 0.000000000000

close

0 0

found

程序将指示小孝投掷电视球至位置(1000001,1000000)(1000001, 1000000), 并获得电视小姐没有发出声音(电视小姐不在半径R=100,000R = 100,000的范围内)的信息。

随后,程序再次指示小孝投掷电视球, 直到最终指示小孝投掷电视球至(0,0)(0, 0),成功捕捉到电视小姐。