#P13482. [GCJ 2008 EMEA SemiFinal] Scaled Triangle

    ID: 13293 远端评测题 3000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>数学2008Special Judge线性代数Google Code Jam

[GCJ 2008 EMEA SemiFinal] Scaled Triangle

Description

给定两幅三角形图片。第二幅图片是第一幅图片经过平移、旋转和缩放(缩放比例严格在 0011 之间)后得到的版本。两个三角形被放置在桌面上,第二个三角形完全位于第一个三角形内部(可能与边界接触)。

你需要处理这幅图片,找到一个点,使得该点在原图和缩放后的图片中重合。如果有多个解,可以输出任意一个。如果没有解,则输出 "No Solution"。

Input Format

第一行输入一个整数 NN,表示测试用例的数量。接下来每个测试用例包含两行,每行包含六个用空格分隔的整数,表示一个三角形的三个顶点坐标,格式为 "x1x_1 y1y_1 x2x_2 y2y_2 x3x_3 y3y_3"。第一个三角形的 (x1,y1)(x_1, y_1) 与第二个三角形的 (x1,y1)(x_1, y_1) 对应,(x2,y2)(x_2, y_2)(x2,y2)(x_2, y_2) 对应,(x3,y3)(x_3, y_3)(x3,y3)(x_3, y_3) 对应。

Output Format

对于每个测试用例,输出一行,格式为 "Case #xx: ",后接两个实数,表示重合点的坐标,用一个空格分隔;如果没有解,则输出 "No Solution"。只要相对或绝对误差不超过 10510^{-5},答案即视为正确。

2
0 0 0 2 2 0
0 0 0 1 1 0
10 0 0 10 0 0
3 3 1 1 3 1
Case #1: 0.000000 0.000000
Case #2: 2.692308 1.538462

Hint

数据范围

  • 1N101 \leqslant N \leqslant 10
  • 坐标均为 10000-10\,0001000010\,000 之间的整数。每个三角形的三个点不会共线。

小数据(测试集 1 - 可见)

  • 所有测试用例均为等腰直角三角形(即三角形的角分别为 4545^\circ4545^\circ9090^\circ)。

大数据(测试集 2 - 隐藏)

  • 三角形可以为任意形状。

由 ChatGPT 4.1 翻译