atcoder#ABC207D. [ABC207D] Congruence Points

[ABC207D] Congruence Points

Score : 400400 points

Problem Statement

You are given two sets S={(a1,b1),(a2,b2),,(aN,bN)}S=\{(a_1,b_1),(a_2,b_2),\ldots,(a_N,b_N)\} and T={(c1,d1),(c2,d2),,(cN,dN)}T=\{(c_1,d_1),(c_2,d_2),\ldots,(c_N,d_N)\} of NN points each on a two-dimensional plane.

Determine whether it is possible to do the following operations on SS any number of times (possibly zero) in any order so that SS matches TT.

  • Choose a real number p (0<p<360)p\ (0 \lt p \lt 360) and rotate every point in SS pp degrees clockwise about the origin.
  • Choose real numbers qq and rr and move every point in SS by qq in the xx-direction and by rr in the yy-direction. Here, qq and rr can be any real numbers, be it positive, negative, or zero.

Constraints

  • 1N1001 \leq N \leq 100
  • 10ai,bi,ci,di10-10 \leq a_i,b_i,c_i,d_i \leq 10
  • (ai,bi)(aj,bj)(a_i,b_i) \neq (a_j,b_j) if iji \neq j.
  • (ci,di)(cj,dj)(c_i,d_i) \neq (c_j,d_j) if iji \neq j.
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN

a1a_1 b1b_1

a2a_2 b2b_2

\hspace{0.6cm}\vdots

aNa_N bNb_N

c1c_1 d1d_1

c2c_2 d2d_2

\hspace{0.6cm}\vdots

cNc_N dNd_N

Output

If we can match SS with TT, print Yes; otherwise, print No.

3
0 0
0 1
1 0
2 0
3 0
3 1
Yes

The figure below shows the given sets of points, where the points in SS and TT are painted red and green, respectively:

In this case, we can match SS with TT as follows:

  1. Rotate every point in SS 270270 degrees clockwise about the origin.
  2. Move every point in SS by 33 in the xx-direction and by 00 in the yy-direction.
3
1 0
1 1
3 0
-1 0
-1 1
-3 0
No

The figure below shows the given sets of points:

Although SS and TT are symmetric about the yy-axis, we cannot match SS with TT by rotations and translations as stated in Problem Statement.

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