QOJ.ac

QOJ

時間限制: 2 s 記憶體限制: 2048 MB 總分: 100 互動

#7931. 探测圆盘

统计

这是一个交互式问题。

一个薄的黑色圆盘平放在一个白色盒子的方形底部。盒子底部的边长为 $10^5$ 个单位。

你无法直接观察盒子内部,但你需要确定圆盘的大小及其在盒子底部的位置。已知圆盘是一个正圆,半径为整数且不小于 $100$ 个单位,其圆心到盒子底部各边的距离均为整数。当然,圆盘的半径不大于圆心到盒子底部任意一边的距离。

你可以通过向盒子底部投射一条细光线段来探测圆盘。由于圆盘和盒子底部的反射系数完全不同,根据总反射强度,你可以得知线段中照射到圆盘上的部分的长度。

你的任务是通过重复探测来确定圆盘的确切位置和大小。

交互

你可以重复进行探测,每次探测包括发送一个查询并接收其响应。你最多可以进行 $1024$ 次探测。

查询应按以下格式发送到标准输出,并以换行符结尾:

query x1 y1 x2 y2

其中 $(x_1, y_1)$ 和 $(x_2, y_2)$ 是光线段的两个端点位置。它们必须表示不同的点。坐标系设定为盒子底部的一个角为原点 $(0, 0)$,对角点坐标为 $(10^5, 10^5)$。所有的 $x_1, y_1, x_2, y_2$ 都应为 $0$ 到 $10^5$ 之间的整数(包含边界)。

作为对该查询的响应,一个实数会被发送回标准输入,并以换行符结尾。该数字表示线段中照射到圆盘上的部分的长度。它以不带指数部分的十进制记数法表示,小数点后有 $7$ 位数字。该数字可能包含最大为 $10^{-6}$ 的绝对误差。

当你通过探测确定了圆盘的位置和大小后,可以发送你的答案。答案应包含圆盘的圆心位置和半径。它应按以下格式发送到标准输出,并以换行符结尾:

answer x y r

其中 $(x, y)$ 应为圆盘圆心的位置,$r$ 为圆盘的半径。$x, y$ 和 $r$ 均应为整数。

发送答案后,你的程序应立即终止,且不得有任何额外输出。因此,你只能发送一次答案。

交互式评测说明

当你的输出违反了上述任何条件(答案错误、格式无效、$x_1, y_1, x_2$ 或 $y_2$ 超出范围、查询次数过多、发送答案后有额外输出等)时,你的提交将被判为错误答案(Wrong Answer)。由于某些环境需要刷新输出缓冲区,请确保你的输出确实已发送。否则,你的输出将永远无法到达评测机。

你将获得一个用于本地测试的命令行工具。更多详细信息,请参考竞赛系统中的说明。

样例

样例交互

query 40000 0 40000 100000
60000.0000000
query 0 10000 100000 10000
0.0000000
query 60000 60000 80000 80000
12315.3774869
answer 40000 60000 30000

图 K.1. 样例交互

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.