AT_abc207_d.[ABC207D] Congruence Points

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定两个在二维平面上的点集 S={(a1,b1),(a2,b2),…,(aN,bN)}S=\{(a_1,b_1),(a_2,b_2),\ldots,(a_N,b_N)\} 和 T={(c1,d1),(c2,d2),…,(cN,dN)}T=\{(c_1,d_1),(c_2,d_2),\ldots,(c_N,d_N)\},它们都包含 NN 个点。

你可以对 SS 进行以下任意次数、任意顺序的操作,请判断是否可以通过这些操作使 SS 和 TT 完全重合。

  • 选择一个实数 p (0<p<360)p\ (0 < p < 360),将 SS 中的所有点以原点为中心顺时针旋转 pp 度。
  • 选择实数 q,rq, r,将 SS 中的所有点在 xx 轴方向平移 qq,在 yy 轴方向平移 rr。q,rq, r 没有任何限制,可以为正、负或零。

输入格式

输入以如下格式从标准输入读入。

NN
a1 b1a_1\ b_1
a2 b2a_2\ b_2
⋮\vdots
aN bNa_N\ b_N
c1 d1c_1\ d_1
c2 d2c_2\ d_2
⋮\vdots
cN dNc_N\ d_N

输出格式

如果可以通过题目中的操作使 SS 和 TT 完全重合,输出 Yes;否则输出 No。

输入输出样例

  • 输入#1

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

    输出#1

    Yes
  • 输入#2

    3
    1 0
    1 1
    3 0
    -1 0
    -1 1
    -3 0

    输出#2

    No
  • 输入#3

    4
    0 0
    2 9
    10 -2
    -6 -7
    0 0
    2 9
    10 -2
    -6 -7

    输出#3

    Yes
  • 输入#4

    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

    输出#4

    Yes

说明/提示

限制条件

  • 1≤N≤1001 \leq N \leq 100
  • −10≤ai,bi,ci,di≤10-10 \leq a_i, b_i, c_i, d_i \leq 10
  • 若 i≠ji \neq j,则 (ai,bi)≠(aj,bj)(a_i, b_i) \neq (a_j, b_j)
  • 若 i≠ji \neq j,则 (ci,di)≠(cj,dj)(c_i, d_i) \neq (c_j, d_j)
  • 所有输入均为整数

样例解释 1

将 SS 中的点用红色表示,TT 中的点用绿色表示,给定的点集如下图所示。

在这种情况下,可以通过以下步骤使 SS 和 TT 完全重合:

  1. 将 SS 中的所有点以原点为中心顺时针旋转 270270 度。
  2. 将 SS 中的所有点在 xx 轴方向平移 33,在 yy 轴方向平移 00。

样例解释 2

对应输入的图如下所示。

SS 和 TT 关于 yy 轴对称,但无法通过题目中描述的旋转和平移操作使 SS 和 TT 完全重合。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页