AT_arc044_d [ARC044D] suffix array

Description

[problemUrl]: https://atcoder.jp/contests/arc044/tasks/arc044_d 高橋君はsuffix arrayの構築アルゴリズムが大好きです。毎日さまざまなsuffix arrayの構築アルゴリズムを実装して遊んでいます。 しかし、高橋君はsuffix arrayを構築しすぎてしまったので、suffix arrayを構築するのに飽きてしまいました。 そこで高橋君は、与えられた順列に対し、その順列をsuffix arrayに持つような辞書順最小の文字列を求めることにしました。 ただし、$ 2 $つの文字列$ X_1,X_2,...,X_s $と$ Y_1,Y_2,...,Y_t $に対し、辞書順で$ X\

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ A_1\ A_2\ ...\ A_N $ - $ 1 $ 行目には、整数$ N(1\ ≦\ N\ ≦\ 10^6) $が与えられる。 - $ 2 $ 行目には、整数列$ A_1,...,A_N(1\ ≦\ A_1,...,A_N\ ≦\ N) $が与えられる。これら$ N $個の整数はどの$ 2 $つも互いに異なることが保障される。

Output Format

順列$ A_1,...,A_N $をsuffix arrayに持つ辞書順最小の文字列を出力せよ。 出力の末尾に改行を入れること。(21:40修正)

Explanation/Hint

### Sample Explanation 1 条件を満たす文字列は他にも$ CXHZBWA $などがありますが、辞書順最小の$ ABACABA $を出力します。