AT_abc133_b [ABC133B] Good Distance

题目描述

在 $D$ 维空间中有 $N$ 个点。 第 $i$ 个点的坐标为 $(X_{i1},\ X_{i2},\ ...,\ X_{iD})$。 坐标为 $(y_1,\ y_2,\ ...,\ y_D)$ 的点与坐标为 $(z_1,\ z_2,\ ...,\ z_D)$ 的点之间的距离为 $\sqrt{(y_1 - z_1)^2 + (y_2 - z_2)^2 + ... + (y_D - z_D)^2}$。 请问有多少组 $(i,\ j)$ 满足 $i < j$,使得第 $i$ 个点与第 $j$ 个点之间的距离为整数。

输入格式

输入以如下格式从标准输入中给出。 > $N$ $D$ > $X_{11}$ $X_{12}$ ... $X_{1D}$ > $X_{21}$ $X_{22}$ ... $X_{2D}$ > $\vdots$ > $X_{N1}$ $X_{N2}$ ... $X_{ND}$

输出格式

输出满足第 $i$ 个点与第 $j$ 个点之间的距离为整数的 $(i, j)$ 组数($i < j$)。

说明/提示

## 限制条件 - 所有输入均为整数。 - $2 \leq N \leq 10$ - $1 \leq D \leq 10$ - $-20 \leq X_{ij} \leq 20$ - 不会有相同坐标的点。即对于 $i \neq j$,存在某个 $k$ 使得 $X_{ik} \neq X_{jk}$。 ## 样例解释 1 如下有 $1$ 组点对的距离为整数。 - 第 $1$ 个点与第 $2$ 个点的距离为 $\sqrt{|1-5|^2 + |2-5|^2} = 5$,是整数。 - 第 $2$ 个点与第 $3$ 个点的距离为 $\sqrt{|5-(-2)|^2 + |5-8|^2} = \sqrt{58}$,不是整数。 - 第 $3$ 个点与第 $1$ 个点的距离为 $\sqrt{|-2-1|^2 + |8-2|^2} = 3\sqrt{5}$,不是整数。 由 ChatGPT 4.1 翻译