#arc091c. [arc091_c]LISDL
[arc091_c]LISDL
問題文
を並べ替えてできる列であって、以下の条件を満たすものがあるかどうか判定し、あればその例をひとつ構成してください。
- 最長増加部分列の長さは である
- 最長減少部分列の長さは である
注釈
列 の部分列とは の要素をいくつか抜き出して元の順に並べてできる列のことを指し、 また、列 の最長増加部分列とは、 の単調増加な部分列の中で列の長さが最大のものを指します。
同様に、列 の最長減少部分列とは、 の単調減少な部分列の中で列の長さが最大のものを指します。
制約
- 入力はすべて整数である
入力
入力は以下の形式で標準入力から与えられる。
出力
条件を満たす列が存在しない場合、-1
を出力せよ。
そうでない場合、整数を 個出力せよ。 個目には、構成した列の 番目の要素を出力せよ。
入力例 1
5 3 2
出力例 1
2 4 1 5 3
が最長増加部分列の一例、 が最長減少部分列の一例です。
入力例 2
7 7 1
出力例 2
1 2 3 4 5 6 7
入力例 3
300000 300000 300000
出力例 3
-1