ツインリバース
시간 제한2초메모리 제한512 MB
순열이 주어질 때, 위치 i를 기준으로 앞부분과 뒷부분을 각각 뒤집는 연산만으로 정렬할 수 있는지 판정하고, 가능하면 연산 순서를 출력한다.
문제
要素数 の配列 が与えられる。ただし、 は の順列である。
次の操作を 回以上 回以下の任意の回数行い、 を へソートしたい。
- 整数 () を つ選び、区間 の要素を逆順にし、区間 の要素を逆順にする。
ただし、区間 とは の 番目の位置のことである。
を へソートできるか判定せよ。ソートできるならば、操作の例を一つ出力せよ。
입력
入力は以下の形式で標準入力から与えられる。
출력
を へソートできないならば、-1 とだけ一行に出力せよ。
ソートできるならば、操作の例を一つ次のように出力せよ。
- 行目には、操作の回数を表す整数 () を出力せよ。
- 行目からの 行のうち 行目には、 回目の操作で選ぶ整数 () を出力せよ。
제한
- は の順列である。