結果
問題 |
No.3086 Re One Two
|
ユーザー |
![]() |
提出日時 | 2025-04-04 22:08:00 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 295 ms / 2,000 ms |
コード長 | 714 bytes |
コンパイル時間 | 171 ms |
コンパイル使用メモリ | 81,948 KB |
実行使用メモリ | 130,288 KB |
最終ジャッジ日時 | 2025-04-04 22:08:29 |
合計ジャッジ時間 | 10,240 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 32 |
ソースコード
N = int(input()) A = [0] * N B = [0] * N for i in range(N): a, b = map(int, input().split()) A[i] = a; B[i] = b parent = [None] * N for i in range(N): if A[i] == 1: parent[i] = i+1 nxt = [None] * N nxt[N-1] = None for i in range(N-2, -1, -1): if B[i+1] == 1: nxt[i] = i+1 else: nxt[i] = nxt[i+1] for i in range(N): if B[i] == 2: parent[i] = nxt[i] child = [None] * N for i in range(N): if parent[i] is not None: child[parent[i]] = i l = [i for i in range(N) if parent[i] is None] l.sort() res = [] for i in l: now = i while now is not None: res.append(now) now = child[now] print(*map(lambda x: x+1, res), sep='\n')