AT_asaporo2_b Many Swaps Sorting

Description

[problemUrl]: https://atcoder.jp/contests/cf17-tournament-round2-open/tasks/asaporo2_b すぬけくんは $ (0,1,2,\ ...,N-1) $ を並び替えて得られるような数列 $ p $ を持っています。 $ p $ の ($ 0 $-indexedでの) $ i $ 番目の数は $ p_i $ です。 すぬけくんは $ 1,2,...,N-1 $ の番号がついた $ N-1 $ 種類の操作を自由な順番で何度でも行うことができます。 $ k $ 番の操作を行うと以下のソースコードで表されるような処理が実行されます。 ``` for(int i=k;i

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ p_0 $ $ p_1 $ $ ... $ $ p_{N-1} $

Output Format

操作回数(これを $ m $ とする)を $ 1 $ 行目に出力せよ。 続く $ m $ 行のうち $ i $ 行目には $ i $ 番目に実行する操作の番号を出力せよ。 $ m $ が $ 10^5 $ 以下であり、$ m $ 回の操作後に$ p $ が昇順となっていれば正解となる。

Explanation/Hint

### 制約 - $ 2\ \leq\ N\ \leq\ 200 $ - $ 0\ \leq\ p_i\ \leq\ N-1 $ - $ p $ は $ (0,1,2,...,N-1) $ を並び替えて得られる ### 部分点 - $ 300 $ 点分のデータセットでは $ N\ \leq\ 7 $ が成立する - 別の $ 400 $ 点分のデータセットでは $ N\ \leq\ 30 $ が成立する ### Sample Explanation 1 \- 以下の図に各操作による $ p $ の変化を示します。 !\[9f3b51eb1fe742848f407bdeb7b772e1.png\](https://atcoder.jp/img/asaporo2/9f3b51eb1fe742848f407bdeb7b772e1.png)