QOJ.ac

QOJ

时间限制: 2.0 s 内存限制: 2048 MB 总分: 100 难度: [显示] 可 Hack ✓

#16328. 杰出的轮廓

统计

杰出的亿万富翁蔡先生有一个非常特别的强迫症:只有当他的双脚牢牢地踩在瓷砖的边或顶点上(即某块地板砖的边界上)时,他才会感到舒适。最近,他购入了一批相同的、高档的三角形地板砖。他计划用这些瓷砖在他新豪宅的一条长而直的走廊上铺设地板。

走廊是二维平面上的一个无限带状区域。为了确保设计符合他的最高标准,蔡先生制定了严格的铺设规则:每块三角形瓷砖的放置必须跨越走廊的整个宽度,并同时接触两条平行的边界线。这将在带状区域上形成一个连续的、单排的镶嵌图案。其中一块瓷砖必须与他最喜欢的参考三角形完全一致,而所有其他瓷砖必须与该参考三角形全等。

蔡先生目前正站在走廊里的一个固定位置。在经历了一整天漫长的改造工作后,他已经精疲力竭,坦白地说,他根本不想动。他希望瓷砖能从他的参考三角形开始,自动在地面上向外延伸铺设,只要最终的图案符合他的规则即可。当然,只有当瓷砖的某条边或某个顶点与他当前的位置重合时,才算成功!

你的任务是确定是否可能铺设走廊,使得蔡先生当前的位置(点 $D$)恰好落在包含 $\triangle ABC$ 的镶嵌图案的边或顶点上。走廊的边界被定义为两条唯一的平行线 $l_1$ 和 $l_2$,其中 $l_1$ 铺设在 $A$ 和 $B$ 上,$l_2$ 铺设在 $C$ 上。由 $(l_1, l_2)$ 形成的带状区域的镶嵌是指使用 $\triangle ABC$ 的全等副本(允许平移、旋转和反射)对整个带状区域进行无重叠、无缝隙的铺设。

前两个样例测试用例的示意图。

输入格式

输入包含多组测试数据。输入的第一行包含一个整数 $T$ ($1 \le T \le 10^3$),表示测试数据的组数。对于每组测试数据:

第一行包含两个整数 $x_a$ 和 $y_a$ ($-100 \le x_a, y_a \le 100$),表示点 $A$ 的坐标。

第二行包含两个整数 $x_b$ 和 $y_b$ ($-100 \le x_b, y_b \le 100$),表示点 $B$ 的坐标。

第三行包含两个整数 $x_c$ 和 $y_c$ ($-100 \le x_c, y_c \le 100$),表示点 $C$ 的坐标。

第四行包含两个分数 $x_{d1}/x_{d2}$ 和 $y_{d1}/y_{d2}$,其中 $x_{d1}, x_{d2}, y_{d1}, y_{d2}$ 是满足 $-10^7 < x_{d1}, y_{d1} < 10^7$ 且 $0 < x_{d2}, y_{d2} < 10^7$ 的整数,表示点 $D$ 的坐标。

保证 $A$、$B$ 和 $C$ 构成一个非退化的三角形。

输出格式

对于每组测试数据,如果存在一种合法的铺设方案,使得点 $D$ 恰好落在图案中至少一个三角形的边或顶点上,则在一行中输出 "Yes"。否则,输出 "No"。

样例

输入样例 1

4
-2 1
0 0
0 2
2/1 0/1
-2 1
0 0
0 2
1/1 0/1
0 1
-2 1
0 2
1/2 7/4
0 1
-2 1
0 2
-3/2 3/4

输出样例 1

Yes
No
Yes
No

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.