atcoder#ABC207D. [ABC207D] Congruence Points
[ABC207D] Congruence Points
题目描述
要素数が共に であるような二次元平面上の点の集合 と が与えられます。
に対して以下の操作を 回以上任意の順に好きなだけ繰り返すことで、 と を一致させられるかを判定してください。
- 実数 を定め、 に含まれる全ての点を、原点を中心に時計回りに 度回転させる。
- 実数 を定める。 に含まれる全ての点を、 軸方向に , 軸方向に 移動させる。, の値域に制約はなく、特に正/負/零のいずれになってもよい。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
問題文中の操作によって と を一致させられるなら Yes
を、一致させられないなら No
を出力せよ。
题目大意
题意简述
在一个平面直角坐标系上,有两个点的集合 ,对于 , 我们采用 表示 中每个点的坐标 ,对于 , 我们采用 表示 中每个点的坐标
现在我们想要知道经过数次如下的操作(操作类型可自由选择,操作次数可为0)后,是否可使 重合:
-
任选一个实数,并将 中的每个点围绕原点顺时针旋转 p度。
-
选择实数q和r,将S中的每个点在x方向上移动 ,在 方向上移动 。这里, 和 可以是任何实数,无论是正数、负数还是零。
如果可使 重合,输出 , 否则,请输出 .
样例说明:
样例一:
在这种情况下,我们可以如下匹配 和 :
- 围绕原点顺时针旋转 中的每个点 度。
- 将 中的每个点在 方向上移动3,在 方向上移动0。
3
0 0
0 1
1 0
2 0
3 0
3 1
Yes
3
1 0
1 1
3 0
-1 0
-1 1
-3 0
No
4
0 0
2 9
10 -2
-6 -7
0 0
2 9
10 -2
-6 -7
Yes
6
10 5
-9 3
1 -5
-6 -5
6 9
-9 0
-7 -10
-10 -5
5 4
9 0
0 -10
-10 -2
Yes
提示
制約
- なら
- なら
- 入力は全て整数
Sample Explanation 1
に含まれる点を赤で、 に含まれる点を緑で塗った場合、与えられる点集合は以下の図の通りになります。 ![](https://img.atcoder.jp/ghi/39ad67d4e10490f509f252a1f0e4935b.png) この場合、以下の手順によって を に一致させることができます。 1. に含まれる全ての点を、原点を中心に時計回りに 度回転させる。 2. に含まれる全ての点を、 軸方向に , 軸方向に 移動させる。
Sample Explanation 2
入力に対応する図は以下の通りです。 ![](https://img.atcoder.jp/ghi/02c4ca4a8329110dc131b37720283d2a.png) と は 軸に対して線対称ですが、問題文中に書かれているような回転操作、移動操作によって と を一致させることはできません。