Turnir
Mladi Jozef dobio je na poklon skup koji se sastoji od \(2^N\) prirodnih brojeva. S obzirom na to da je Jozef često na nogometnim turnirima on je odlučio organizirati turnir za svojih \(2^N\) prirodnih brojeva.
Turnir nad brojevima izgleda kao na slici; turnir se odvija u parovima, gdje veći od dvaju brojeva prelazi na razinu iznad. Razine su označene brojevima od \(1\) do \(N\), gdje je najvišoj razini pridijeljen broj \(0\).
S obzirom na to da Jozef nema vremena organizirati sve turnire, njega zanima za svaki broj iz početnog skupa koja je najviša razina (najmanji broj razine) na kojoj se može nalaziti za neku permutaciju ulaznog niza.
Ulazni podaci
U prvom retku ulaza nalazi se prirodan broj \(N\) \((1 \leq N \leq 20)\).
U sljedećem retku nalazi se \(2^N\) prirodnih brojeva iz intervala \([1, 10^9]\), elementi skupa.
Izlazni podaci
U prvom i jedinom retku ispišite \(2^N\) brojeva, oznake najviše razine (najmanje oznake razine) na kojoj broj može završiti, redom kojim su dani u ulazu.
Primjeri test podataka
Ulaz
2
1 4 3 2
Izlaz
2 0 1 1
Ulaz
4
5 3 2 6 4 8 7 1 2 4 3 3 6 4 8 1
Izlaz
1 2 2 1 1 0 1 3 2 1 2 2 1 1 0 3
Ulaz
1
1 1
Izlaz
0 0
Comments