結果
| 問題 |
No.1147 土偶Ⅱ
|
| ユーザー |
lam6er
|
| 提出日時 | 2025-03-26 15:55:14 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 82 ms / 500 ms |
| コード長 | 967 bytes |
| コンパイル時間 | 521 ms |
| コンパイル使用メモリ | 82,380 KB |
| 実行使用メモリ | 75,884 KB |
| 最終ジャッジ日時 | 2025-03-26 15:56:03 |
| 合計ジャッジ時間 | 2,730 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 20 |
ソースコード
n, m = map(int, input().split())
# Initialize adjacency list for friends
adj = [set() for _ in range(n + 1)]
for _ in range(m):
a, b = map(int, input().split())
adj[a].add(b)
adj[b].add(a)
# Initialize good relationship matrix
good = [[False] * (n + 1) for _ in range(n + 1)]
for u in range(1, n + 1):
for v in range(u + 1, n + 1):
if v in adj[u]:
continue # They are friends, no good relationship
# Check mutual friends
friends_u = adj[u]
friends_v = adj[v]
if len(friends_u & friends_v) > 0:
good[u][v] = True
good[v][u] = True # For easy lookup
count = 0
# Iterate over all possible trios
for i in range(1, n + 1):
for j in range(i + 1, n + 1):
if good[i][j]:
continue # Skip if i and j have a good relationship
for k in range(j + 1, n + 1):
if not good[i][k] and not good[j][k]:
count += 1
print(count)
lam6er