#863. [ABC239C] Knight Fork

[ABC239C] Knight Fork

题目描述

在平面直角坐标系上有两个点,第 ii 个点的坐标为 (xi,yi)(x_i,y_i)

现在依次输入 x1,y1,x2,y2x_1,y_1,x_2,y_2 ,问:是否存在一个点,使得这个点与前文所述的两个点的距离都是 5\sqrt5 ?

该点的横纵坐标必须都是整数。

输入格式

第一行输入四个整数分别是 x1 x_1 y1 y_1 x2 x_2 y2 y_2

输出格式

存在输出 Yes,不存在则输出 No

0 0 3 3
Yes
0 1 2 3
No
1000000000 1000000000 999999999 999999999
Yes

提示

xyxy 坐标平面上。

两个点 (a,b)(a, b)(c,d)(c, d) 之间的距离定义为它们之间的欧氏距离 (ac)2+(bd)2\sqrt{(a - c)^2 + (b-d)^2}

下图展示了一个 xyxy /平面,黑色圆圈位于 (0,0)(0, 0) ,白色圆圈位于网格点,网格点与 (0,0)(0, 0) 的距离为 5\sqrt{5} 。(网格中的 xxyy 都是整数)。

image

数据范围

  • 109  x1  109 -10^9\ \leq\ x_1\ \leq\ 10^9
  • 109  y1  109 -10^9\ \leq\ y_1\ \leq\ 10^9
  • 109  x2  109 -10^9\ \leq\ x_2\ \leq\ 10^9
  • 109  y2  109 -10^9\ \leq\ y_2\ \leq\ 10^9
  • (x1, y1)  (x2, y2) (x_1,\ y_1)\ \neq\ (x_2,\ y_2)

样例 1 解释

  • (2,1)(2,1)(x1,y1)(x_1, y_1) 之间的距离为 (02)2+(01)2=5\sqrt{(0-2)^2 + (0-1)^2} = \sqrt{5}
  • (2,1)(2,1)(x2,y2)(x_2, y_2) 之间的距离为 (32)2+(31)2=5\sqrt{(3-2)^2 + (3-1)^2} = \sqrt{5}
  • (2,1)(2, 1) 是网格点、

所以点 (2,1)(2, 1) 满足条件。因此,应打印 Yes。用同样的方法可以验证 (1,2)(1, 2) 也满足条件。