結果
| 問題 |
No.2820 Non-Preferred IUPAC Nomenclature
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-07-26 22:03:45 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 713 bytes |
| コンパイル時間 | 284 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 57,604 KB |
| 最終ジャッジ日時 | 2024-07-26 22:03:54 |
| 合計ジャッジ時間 | 8,942 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 WA * 2 |
| other | AC * 2 WA * 20 |
ソースコード
def root(P, v):
if P[v] < 0:
return v
P[v] = root(P, P[v])
return P[v]
def unite(P, v, u, A):
rv = root(P, v)
ru = root(P, u)
if rv == ru:
return False
if P[rv] > P[ru]:
P[rv] = ru
A[ru] = f"({A[rv][:-3]}yl){A[ru]}"
A[rv] = ""
else:
if P[rv] == P[ru]:
P[rv] -= 1
P[ru] = rv
A[rv] = f"({A[ru][:-3]}yl){A[rv]}"
A[ru] = ""
return True
N = int(input())
C = [[int(c)-1 for c in input().split() if c.isdigit()] for i in range(N)]
A = ["methane" for i in range(N)]
P = [-1 for i in range(N)]
for i in range(N):
for j in C[i]:
if i < j:
unite(P, i, j, A)
print("".join(A))