結果
問題 | 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))