Laiko ribojimas: 1s

Atminties ribojimas: 128MB

Duomenų failas: intervalu_apsukimas.in

Rezultatų failas: intervalu_apsukimas.out

Jei norite pateikti savo sprendimą - prisijunkite.

Intervalų apsukimas

Turite sąrašą a_i, kuriame yra N elementų. Pradžioje a_i=i, 1\\leqi\\leqN. Jums duota Q užklausų. Kiekviena užklausa yra aprašoma pora skaičių a,b. Gavus užklausą jūs turite apsukti sąrašo intervalą nuo a iki b (imtinai). Pavyzdžiui, jei dabartinis sąrašas yra

 1 5 3 4 2 6 8 7

ir jūs gaunate užklausą 2,5, tai apsukus intervalą sąrašas atrodys taip:

 1 2 4 3 5 6 8 7

Įvestis

Pirmoje eilutėje yra du skaičiai N ir Q (1\\leqN,Q\\leq10^5).

Sekančiose Q eilučių yra pateiktos užklausos, po vieną kiekvienoje eilutėje. Kiekvieną užklausą sudaro du skaičiai a ir b (1\\leqa\\leqb\\leqN).

Išvestis

Išveskite N skaičių - sąrašą gautą įvykdžius visas duotas užklausas.

Pavyzdžiai

Pradiniai duomenys Rezultatai
4 3
2 3
3 4
1 3
4 3 1 2