問題文
D 次元空間上に N 個の点があります。
i 番目の点の座標は (Xi1,Xi2,...,XiD) です。
座標 (y1,y2,...,yD) の点と座標 (z1,z2,...,zD) の点の距離は $\\sqrt{(y_1 - z_1)^2 + (y_2 - z_2)^2 + ... + (y_D - z_D)^2}$ です。
i 番目の点と j 番目の点の距離が整数となるような組 (i,j) (i<j) はいくつあるでしょうか。
制約
- 入力は全て整数である。
- 2leqNleq10
- 1leqDleq10
- \-20leqXijleq20
- 同じ座標の点は与えられない。すなわち、ineqj ならば XikneqXjk なる k が存在する。
入力
入力は以下の形式で標準入力から与えられる。
N D
X11 X12 ... X1D
X21 X22 ... X2D
vdots
XN1 XN2 ... XND
出力
i 番目の点と j 番目の点の距離が整数となるような組 (i,j) (i<j) の数を出力せよ。
入力例 1
3 2
1 2
5 5
-2 8
出力例 1
1
以下のように距離が整数となる点の組は 1 組です。
- 1 番目の点と 2 番目の点の距離は sqrt∣1−5∣2+∣2−5∣2=5 で、これは整数です。
- 2 番目の点と 3 番目の点の距離は sqrt∣5−(−2)∣2+∣5−8∣2=sqrt58 で、これは整数ではありません。
- 3 番目の点と 1 番目の点の距離は sqrt∣−2−1∣2+∣8−2∣2=3sqrt5 で、これは整数ではありません。
入力例 2
3 4
-3 7 8 2
-12 1 10 2
-2 8 9 3
出力例 2
2
入力例 3
5 1
1
2
3
4
5
出力例 3
10