- Time limit: 1.00 s
- Memory limit: 512 MB
Sinulla on taulukko, jossa esiintyy kerran jokainen luku väliltä 1,2,\dots,n. Tehtäväsi on järjestää taulukon luvut pienimmästä suurimpaan kääntämällä alitaulukoita. Voit antaa minkä tahansa ratkaisun, kunhan siinä on enintään n kääntöä.
Syöte
Syötteen ensimmäisellä rivillä on kokonaisluku n: taulukon koko. Taulukon alkiot on numeroitu 1,2,\dots,n.
Seuraavalla rivillä on n kokonaislukua x_1,x_2,\dots,x_n: taulukon sisältö.
Tuloste
Tulosta ensin kokonaisluku k: kääntöjen määrä.
Tulosta sitten k riviä, jotka kuvaavat käännöt. Jokaisella rivillä on kaksi kokonaislukua a ja b: käännät alitaulukon kohdasta a \dots b.
Rajat
- 1 \le n \le 2 \cdot 10^5
Esimerkki
Syöte:
4 2 3 1 4
Tuloste:
2 1 3 2 3