AT_abc337_c [ABC337C] Lining Up 2

Description

[problemUrl]: https://atcoder.jp/contests/abc337/tasks/abc337_c 人 $ 1, $ 人 $ 2,\ldots, $ 人 $ N $ の $ N $ 人が一列に並んでいます。 並び方の情報が長さ $ N $ の数列 $ A=(A\ _\ 1,A\ _\ 2,\ldots,A\ _\ N) $ として与えられます。 $ A\ _\ i\ (1\leq\ i\leq\ N) $ は次のような情報を表しています。 - $ A\ _\ i=-1 $ のとき、人 $ i $ は先頭に並んでいる。 - $ A\ _\ i\neq\ -1 $ のとき、人 $ i $ は人 $ A\ _\ i $ のすぐ後ろに並んでいる。 列に並んでいる人の番号を先頭から順番に出力してください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ A\ _\ 1 $ $ A\ _\ 2 $ $ \ldots $ $ A\ _\ N $

Output Format

人 $ s\ _\ 1, $ 人 $ s\ _\ 2,\ldots, $ 人 $ s\ _\ N $ がこの順に列に並んでいるとき、$ s\ _\ 1,s\ _\ 2,\ldots,s\ _\ N $ をこの順に空白を区切りとして出力せよ。

Explanation/Hint

### 制約 - $ 1\leq\ N\leq3\times10\ ^\ 5 $ - $ A\ _\ i=-1 $ もしくは $ 1\leq\ A\ _\ i\leq\ N\ (1\leq\ i\leq\ N) $ - 情報と矛盾しないような $ N $ 人の並び方がただ $ 1 $ 通り存在する - 入力はすべて整数 ### Sample Explanation 1 先頭から、人 $ 3, $ 人 $ 5, $ 人 $ 4, $ 人 $ 1, $ 人 $ 2, $ 人 $ 6 $ がこの順に列に並んでいるとき、与えられた情報と一致しています。 実際、 - 人 $ 1 $ は人 $ 4 $ のすぐ後ろに並んでいます。 - 人 $ 2 $ は人 $ 1 $ のすぐ後ろに並んでいます。 - 人 $ 3 $ は先頭に並んでいます。 - 人 $ 4 $ は人 $ 5 $ のすぐ後ろに並んでいます。 - 人 $ 5 $ は人 $ 3 $ のすぐ後ろに並んでいます。 - 人 $ 6 $ は人 $ 2 $ のすぐ後ろに並んでいます。 となり、与えられた情報と一致していることが確認できます。 よって、$ 3,5,4,1,2,6 $ をこの順に空白区切りで出力してください。