Gigel a primit de ziua lui un joc cu bile. Jocul conţine n
bile numerotate cu numerele naturale distincte de la 1
la n
. Jucându-se, Gigel a amestecat bilele astfel încât acum ele nu mai sunt în ordine. Ca să le pună înapoi în cutia jocului, Gigel ia de pe masă bilele una câte una, şi le pune în cutie formând un şir. Însă Gigel se joacă şi acum, astfel încât el nu pune bilele la rând, una după alta, ci are o regulă pe care o respectă cu stricteţe. Astfel, Gigel încearcă să plaseze fiecare bilă pe care a luat-o de pe masă exact la mijlocul şirului de bile deja format. Dacă acest lucru nu este posibil (șirul are lungime impară), atunci el plasează bila la sfârşitul şirului de bile deja format. După ce toate bilele au fost puse în cutie, Gigel îşi dă seama că nu a notat ordinea în care a luat bilele de pe masă şi, în mod firesc, îşi pune problema dacă nu cumva poate deduce acest lucru din şirul de bile pe care tocmai l-a format.
Cerinţe
Cunoscându-se numărul de bile şi configuraţia finală a bilelor în şir să se determine:
1. numărul ultimei bile luate de pe masă;
2. ordinea în care bilele au fost luate de pe masă.
Date de intrare
Fișierul de intrare ordine.in
conține pe prima linie numărul n
de bile. Pe linia a doua a fişierului de intrare se găsesc n
numere naturale, cu valori între 1
şi n
, separate prin câte un spaţiu, care reprezintă şirul de bile obţinut de Gigel în cutie. Linia a treia conţine una dintre valorile 1
sau 2
reprezentând cerinţa 1
, dacă se cere determinarea ultimei bile luate de Gigel de pe masă, respectiv cerinţa 2
, dacă se cere determinarea ordinii în care Gigel a luat bilele de pe masă.
Date de ieșire
Fișierul de ieșire ordine.out
va conține pe prima linie o valoarea naturală reprezentând numărul ultimei bile luate de Gigel, dacă cerinţa a fost 1, respectiv n
numere naturale, cu valori cuprinse între 1
şi n
, separate prin câte un spaţiu, care reprezintă ordinea în care Gigel a luat bilele de pe masă, dacă cerinţa a fost 2.
Restricții și precizări
1 <= n <= 250000
- Pentru cerinţa 1 se acordă 30% din punctaj, iar pentru cerinţa 2 se acordă 70% din punctaj.
Exemplul 1
ordine.in
7 1 7 2 5 3 4 6 1
ordine.out
5
Exemplul 2
ordine.in
7 1 7 2 5 3 4 6 2
ordine.out
1 3 7 4 2 6 5