#P10088. [ROIR 2022] n 巧板 (Day 1)

[ROIR 2022] n 巧板 (Day 1)

Description

需要找到所有可以按照指定规则组合成大三角形的四个不同三角形的集合。如果存在一个三角形属于其中一个集合但不属于另一个集合,则认为两个集合是不同的。

Input Format

第一行包含一个整数 tt,表示当前测试点的编号。

第二行包含一个整数 nn,表示拼图中的三角形数量(4n304 \le n \le 30)。

接下来的 nn 行,每行输入六个数,表示一个三角形三个顶点的坐标,按逆时针顺序给出。所有坐标都是整数,且不超过 10510^5。保证三角形不会退化为直线段。初始位置的三角形可能相交。

Output Format

第一行输出一个整数,表示按照指定规则可以组合成大三角形的四个三角形的集合数量。

接下来的行输出这些集合。每个集合由其中包含的三角形的编号组成。集合内部的三角形可以以任何顺序输出。集合的输出顺序也是任意的。

1
4
0 0 6 2 1 2
0 0 5 0 6 3
0 0 3 1 1 3
0 0 6 3 3 6
1
1 2 3 4
2
6
0 0 1 0 1 1
0 1 0 0 1 0
-1 0 0 0 0 1
1 1 0 1 1 0
-1 0 0 -1 0 0
0 0 1 1 0 1
15
1 2 3 4
1 2 3 5
1 2 3 6
1 2 4 5
1 2 4 6
1 2 5 6
1 3 4 5
1 3 4 6
1 3 5 6
1 4 5 6
2 3 4 5
2 3 4 6
2 3 5 6
2 4 5 6
3 4 5 6

Hint

本题分 2222 个测试点,前两个测试点为样例,通过不得分,后 2020 个测试点每个 55 分。

测试点编号 特殊性质
11 输入数据即样例 11
22 输入数据即样例 22
33 所有三角形全等,n30n\le30
44 所有三角形都有一条水平的边和一条垂直的边且它们都是等腰三角形,n10n\le10
55 所有三角形都有一条水平的边和一条垂直的边且它们都是等腰三角形,n30n\le30
66 所有三角形都有一条水平的边和一条垂直的边且 n10n\le10
77 所有三角形都有一条水平的边和一条垂直的边且 n30n\le30
88 所有三角形都是直角三角形且 n10n\le10
99 所有三角形都是直角三角形且 n30n\le30
1010 所有能拼成大三角形的四个小三角形均不用旋转即可拼成且 n10n\le10
1111 所有能拼成大三角形的四个小三角形均不用旋转即可拼成且 n20n\le20
1212 所有能拼成大三角形的四个小三角形均不用旋转即可拼成且 n30n\le30
1313 n=10n=10
1414
1515
1616 n=20n=20
1717
1818
1919 n=30n=30
2020
2121
2222