AT_abc207_d [ABC207D] Congruence Points

Description

[problemUrl]: https://atcoder.jp/contests/abc207/tasks/abc207_d 要素数が共に $ N $ であるような二次元平面上の点の集合 $ S=\{(a_1,b_1),(a_2,b_2),\ldots,(a_N,b_N)\} $ と $ T=\{(c_1,d_1),(c_2,d_2),\ldots,(c_N,d_N)\} $ が与えられます。 $ S $ に対して以下の操作を $ 0 $ 回以上任意の順に好きなだけ繰り返すことで、$ S $ と $ T $ を一致させられるかを判定してください。 - 実数 $ p\ (0\ \lt\ p\ \lt\ 360) $ を定め、 $ S $ に含まれる全ての点を、原点を中心に時計回りに $ p $ 度回転させる。 - 実数 $ q,r $ を定める。$ S $ に含まれる全ての点を、$ x $ 軸方向に $ q $, $ y $ 軸方向に $ r $ 移動させる。$ q $, $ r $ の値域に制約はなく、特に正/負/零のいずれになってもよい。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ a_1 $ $ b_1 $ $ a_2 $ $ b_2 $ $ \hspace{0.6cm}\vdots $ $ a_N $ $ b_N $ $ c_1 $ $ d_1 $ $ c_2 $ $ d_2 $ $ \hspace{0.6cm}\vdots $ $ c_N $ $ d_N $

Output Format

問題文中の操作によって $ S $ と $ T $ を一致させられるなら `Yes` を、一致させられないなら `No` を出力せよ。

Explanation/Hint

### 制約 - $ 1\ \leq\ N\ \leq\ 100 $ - $ -10\ \leq\ a_i,b_i,c_i,d_i\ \leq\ 10 $ - $ i\ \neq\ j $ なら $ (a_i,b_i)\ \neq\ (a_j,b_j) $ - $ i\ \neq\ j $ なら $ (c_i,d_i)\ \neq\ (c_j,d_j) $ - 入力は全て整数 ### Sample Explanation 1 $ S $ に含まれる点を赤で、$ T $ に含まれる点を緑で塗った場合、与えられる点集合は以下の図の通りになります。 !\[\](https://img.atcoder.jp/ghi/39ad67d4e10490f509f252a1f0e4935b.png) この場合、以下の手順によって $ S $ を $ T $ に一致させることができます。 1. $ S $ に含まれる全ての点を、原点を中心に時計回りに $ 270 $ 度回転させる。 2. $ S $ に含まれる全ての点を、$ x $ 軸方向に $ 3 $, $ y $ 軸方向に $ 0 $ 移動させる。 ### Sample Explanation 2 入力に対応する図は以下の通りです。 !\[\](https://img.atcoder.jp/ghi/02c4ca4a8329110dc131b37720283d2a.png) $ S $ と $ T $ は $ y $ 軸に対して線対称ですが、問題文中に書かれているような回転操作、移動操作によって $ S $ と $ T $ を一致させることはできません。