結果
| 問題 |
No.488 四角関係
|
| コンテスト | |
| ユーザー |
はむ吉🐹
|
| 提出日時 | 2017-02-26 13:39:22 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 240 ms / 5,000 ms |
| コード長 | 879 bytes |
| コンパイル時間 | 125 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 10,880 KB |
| 最終ジャッジ日時 | 2024-06-11 16:35:34 |
| 合計ジャッジ時間 | 2,704 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 22 |
ソースコード
#!/usr/bin/env python3
import itertools
def count_squares(n, x):
def is_quad(a, b, c, d):
if not all((x[a][b], x[b][c], x[c][d], x[d][a])):
return False
elif x[a][c] or x[b][d]:
return False
else:
return True
res = 0
for v1, v2, v3, v4 in itertools.combinations(range(n), 4):
if is_quad(v1, v2, v3, v4):
res += 1
elif is_quad(v1, v3, v2, v4):
res += 1
elif is_quad(v1, v3, v4, v2):
res += 1
return res
def main():
n, m = (int(x) for x in input().split())
adj_matrix = [[False for _ in range(n)] for _ in range(n)]
for _ in range(m):
a, b = (int(x) for x in input().split())
adj_matrix[a][b] = True
adj_matrix[b][a] = True
print(count_squares(n, adj_matrix))
if __name__ == '__main__':
main()
はむ吉🐹