QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 512 MB 満点: 100

#4778. 追踪 RFID

統計

Jeroen 为西北电气资源公司 (NWERC) 经营着一家仓库存储设施。当客户向 NWERC 下订单时,订单会被传送到仓库。Jeroen 的任务是找到订购的产品,将它们装入箱子,并运送给客户。

NWERC 有一项不同寻常的仓库政策:产品没有按任何特定顺序排列,而是散落在各处。然而,Jeroen 能够完成他的工作,因为每件产品都使用 RFID 技术进行追踪。具体来说,每件产品在进入仓库时都会被分配一个无线 RFID 芯片,仓库天花板上的传感器用于自动追踪这些产品。

默认情况下,每个传感器的范围为 $r$ 个单位——也就是说,它可以读取位于其 $r$ 个单位距离内(直线距离)的任何 RFID 芯片。然而,如果传感器和产品之间的线段与 $x$ 面墙相交或接触,则传感器在该方向上的范围会减少 $x$ 个单位。此外,由于其他传感器的干扰,传感器可能无法读取 RFID 芯片,因此仓库中任意一对传感器之间的距离保证至少为 $r$ 个单位。你还可以假设没有任何传感器或产品被放置在墙上。

Jeroen 现在想确定对于每件产品,哪些传感器可以读取其 RFID 芯片。你能帮帮他吗?

样例输入中传感器、墙壁和产品的示意图。

输入格式

第一行包含一个正整数:测试用例的数量,最多为 100 个。每个测试用例包含:

  • 一行包含四个整数 $s$ ($1 \le s \le 250\,000$),$r$ ($1 \le r \le 20$),$w$ ($0 \le w \le 10$) 和 $p$ ($1 \le p \le 10\,000$),其中 $s$ 表示传感器数量,$r$ 表示每个传感器的范围,$w$ 表示墙壁数量,$p$ 表示产品数量。
  • $s$ 行,每行包含两个整数 $x_i$ 和 $y_i$ ($-10\,000 \le x_i, y_i \le 10\,000$)。每一行代表一个位于 $(x_i, y_i)$ 的传感器。保证任意一对传感器之间的距离至少为 $r$ 个单位。
  • $w$ 行,每行包含四个整数 $bx_i, by_i, ex_i$ 和 $ey_i$ ($-10\,000 \le bx_i, by_i, ex_i, ey_i \le 10\,000$)。每一行代表一堵墙,应视为从 $(bx_i, by_i)$ 到 $(ex_i, ey_i)$ 的线段。该线段的长度为正。
  • $p$ 行,每行包含两个整数 $px_i$ 和 $py_i$ ($-10\,000 \le px_i, py_i \le 10\,000$)。每一行代表一个位于 $(px_i, py_i)$ 的产品。

输出格式

对于每个测试用例:

  • 输出 $p$ 行,每行代表一个产品,顺序与输入中的顺序一致。每行应包含一个整数 $t$,表示可以追踪该产品的传感器数量;随后是 $t$ 个有序对,表示相应的传感器位置。如果有多个传感器,应按 $x$ 坐标升序排序。如果多个传感器具有相同的 $x$ 坐标,则应按 $y$ 坐标升序排序。

样例

输入 1

1
4 3 4 7
0 0
-1 3
2 3
11 5
-4 -1 5 -1
3 4 6 1
11 4 11 3
12 5 12 8
1 1
0 -2
4 4
11 2
13 5
13 7
14 5

输出 1

3 (-1,3) (0,0) (2,3)
1 (0,0)
0
0
1 (11,5)
0
0

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.