计算图片中的三角形数量是大脑测试中常用的一项任务。您将获得一张包含由三角形组成的形状的图片。然后,您必须在图片中找到所有可能的三角形。
任务
系统会以您选择的格式为您提供行列表。然后,您必须输出在其中找到的三角形的列表
输入值
您会得到行的列表,每行都有四个整数坐标(例如x1 y1 x2 y2
)。您可以选择输入格式,只要记录清楚即可。例子:
0 4 8 1
0 4 9 5
8 1 9 5
2 8 0 4
9 5 2 8
[[0, 4, 8, 1], [0, 4, 9, 5], [8, 1, 9, 5], [2, 8, 0, 4], [9, 5, 2, 8]]
这是与图像相同的输入:
另一个带有交叉点(仅一种格式以节省空间):
[[2, 1, 5, 0], [2, 1, 2, 7], [5, 0, 6, 6], [5, 0, 2, 7], [6, 6, 2, 1], [2, 7, 6, 6]]
输出量
您必须x1 y1 x2 y2 x3 y3
在输入指定的图片中输出所有三角形的列表,每个三角形由六个浮点坐标(例如)给定。这些可能不是整数,因为线可能在任何点交叉。您可以选择输出格式,只要记录清楚即可。上面的示例输入的示例输出:
0 4 8 1 9 5
0 4 9 5 2 8
[[0, 4, 8, 3, 9, 5], [0, 4, 9, 5, 2, 8]]
[[2, 1, 5, 0, 2, 7], [2, 1, 5, 0, 6, 6], [5, 0, 6, 6, 2, 7], [2, 1, 6, 6, 2, 7], [2, 1, 5, 0, 3.674, 3.093], [5, 0, 6, 6, 3.674, 3.093], [6, 6, 2, 7, 3.674, 3.093], [2, 7, 2, 1, 3.674, 3.093]]
您可能会认为
没有边线相交但没有任何线相交的情况,例如
[[0, 9, 1, 8], [1, 8, 2, 9], [2, 9, 3, 8], [3, 8, 4, 9], [4, 9, 0, 9]]
没有超过179度的角度,例如
[[0, 0, 0, 1], [0, 1, 0, 2], [0, 2, 0, 0]]
规则
- 您可以使用任何想要的语言。
- 无需使用任何外部资源。
- 有标准漏洞。
计分
这是代码高尔夫球,因此最短的答案以字节为单位。
[0,0],[1,0],[2,0],[1,2]
具有180度的一个角度的“四边形”。没有三角形或1个三角形?
[0,9],[1,8],[2,9],[3,8],[4,9]
实际上是一个W,在顶部画一条线。是不是三角形或2个三角形?