QOJ.ac

QOJ

時間限制: 2 s 記憶體限制: 512 MB 總分: 100

#1181. 特邀演讲者

统计

在一场大型会议中,有 $n$ 位受邀演讲者——该领域顶尖的研究人员。不幸的是,他们彼此之间极其厌恶。他们都不愿意比别人晚发言,因此他们必须在欢迎晚会之后同时进行演讲。你设法为他们安排了 $n$ 个不同的演讲室,以及晚会上的 $n$ 张桌子。会议场地非常大,我们可以将其视为欧几里得平面,所有的桌子和房间都可以看作该平面上的点。

所有的房间以及所有的桌子当然都是相同的,因此你可以将任何房间或桌子分配给任何一位科学家。剩下的唯一问题是他们如何从这些点中的一个移动到另一个——如果任何两位演讲者的路径发生交叉,就会引发严重的丑闻。你可以给他们提供关于他们应该采取什么路径的非常详细的说明,但他们似乎只愿意沿着直线移动。因此,你必须用折线(一系列相连的线段)将 $n$ 张桌子与 $n$ 个演讲室连接起来,使得其中任意两条折线互不相交。

输入格式

输入的第一行包含测试用例的数量 $z$ ($1 \le z \le 200$)。接下来是各测试用例的描述。 每个测试用例的第一行包含一个整数 $n$ ($1 \le n \le 6$),表示受邀演讲者的数量。接下来的 $2n$ 行,每行包含两个整数 $x_i, y_i$ ($|x_i|, |y_i| \le 100$),表示第 $i$ 个点的坐标。前 $n$ 个点是桌子,其余的是演讲室。

你可以假设所有的 $x_i$ 互不相同,所有的 $y_i$ 互不相同,且没有三点共线。

输出格式

对于每个测试用例,输出 $n$ 条折线,格式如下:对于每条折线,首先输出其顶点的数量 $k$。然后,在接下来的 $k$ 行中,输出该折线连续顶点的坐标。每条折线的两端必须是两个输入点:一张桌子和一个演讲室。任何折线不得自交,且任意两条折线不得有公共点(特别地,每个输入点必须出现在某条折线的端点处)。此外,$k$ 不应超过 $100$,且所有点的坐标应在 $-1000$ 到 $1000$ 之间。

样例

样例输入 1

1
3
0 0
2 2
1 -4
-1 -2
-3 -1
-2 4

样例输出 1

3
-1 -2
-1 2
2 2
4
0 0
0 -3
-2 -3
-3 -1
3
-2 4
3 2
1 -4

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.