https://atcoder.jp/contests/abc133/tasks/abc133_b
解説
https://atcoder.jp/contests/abc133/submissions/6311855
(i,j)の組は全探索できるので、全探索して、距離が整数となる組を数え上げよう。
ルートの解決が少し厄介であるので、距離^2が平方数であるかを判定しよう。
平方数であれば、距離は整数であるので、答えをインクリメントする。
int N, D, X[10][10]; //--------------------------------------------------------------------------------------------------- void _main() { cin >> N >> D; rep(i, 0, N) rep(d, 0, D) cin >> X[i][d]; int ans = 0; rep(i, 0, N) rep(j, i + 1, N) { int dd = 0; rep(d, 0, D) dd += (X[i][d] - X[j][d]) * (X[i][d] - X[j][d]); if (isSquare(dd)) ans++; } cout << ans << endl; }