CSES - Järjestäminen
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Sinulla on taulukko, jossa esiintyy kerran jokainen luku väliltä 1,2,,n1,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 nn kääntöä.

Syöte

Syötteen ensimmäisellä rivillä on kokonaisluku nn: taulukon koko. Taulukon alkiot on numeroitu 1,2,,n1,2,\dots,n.

Seuraavalla rivillä on nn kokonaislukua x1,x2,,xnx_1,x_2,\dots,x_n: taulukon sisältö.

Tuloste

Tulosta ensin kokonaisluku kk: kääntöjen määrä.

Tulosta sitten kk riviä, jotka kuvaavat käännöt. Jokaisella rivillä on kaksi kokonaislukua aa ja bb: käännät alitaulukon kohdasta aba \dots b.

Rajat

  • 1n21051 \le n \le 2 \cdot 10^5

Esimerkki

Syöte:

4
2 3 1 4

Tuloste:

2
1 3
2 3