问题 E: 选择平移相等

内存限制:1024 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:6 解决:1

题目描述

给定两组点集合 $S = \{ (a_1, b_1), (a_2, b_2), ..., (a_N, b_N) \} $ 和 $T = \{ (c_1, d_1), (c_2, d_2), ..., (c_N, d_N) \} $,它们分别包含了平面上的 $N$ 个点。
判断是否存在一系列操作,可以对集合 $S$ 进行任意次数(包括零次)的操作,并且可以以任意顺序进行操作,使得集合 $S$ 与集合 $T$ 中各点相匹配。
操作包括以下两种情况:
1. 选择一个实数 $p(0<p<360)$,并将集合 $S$ 中的每个点绕原点顺时针旋转 $p$ 度。
2. 选择任意实数 $\Delta x$ 和 $\Delta y$,并将集合 $S$ 中的每个点在 $x$ 方向上平移 $\Delta x$,在 $y$ 方向上平移 $\Delta y$。
我们需要判断是否存在一系列这样的操作,使得集合 $S$ 可以与集合 $T$ 相匹配,若存在输出 $Yes$ ,否则输出 $No$ 。

输入

输入共 $2N+1$ 行,
第一行包括一个正整数表示两个点集的大小 $N(1 \leq N \leq 100)$
第二行到第 $N+1$ 行每行包括两个整数 $(a_i,b_i)(-10 \leq a_i,b_i \leq 10)$ ,表示集合 $S$ 中的 $N$ 个点,保证集合中各点不相同
第 $N+2$ 行到第 $2N+1$ 行每行包括两个整数 $(c_i,d_i)(-10 \leq c_i,d_i \leq 10)$ ,表示集合 $T$ 中的 $N$ 个点,保证集合中各点不相同

输出

输出共一行,
表示最终答案,为 $Yes$ 或 $No$

样例输入 复制

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

样例输出 复制

Yes

提示

对于 $S$ ,进行一次操作 $p=270$,$\Delta x=3$ 和 $\Delta y=0$,可得到 $T$