towerx

Time limit: 0.45s Memory limit: 64MB Input: towerx.in Output: towerx.out

Se consideră un șir format din NN numere naturale indexate de la 11 la NN. Inițial șirul conține numai valori nule și se va completa cu numere naturale după cum urmează. Se parcurge de mai multe ori șirul de la poziția 11 la poziția NN și ori de câte ori se întâlnește o valoare nulă se înlocuiește cu cea mai mică valoare nenulă XX care nu există în șir. În același timp toate valorile nenule și strict mai mici decât XX se înlocuiesc cu zero. Parcurgerile se opresc în momentul în care șirul conține numai valori nenule.

Cerinţă

Cunoscând NN să se determine șirul în forma finala.

Date de intrare

Fişierul de intrare towerx.in conţine pe prima linie un număr natural nenul NN – lungimea șirului.

Date de ieşire

Fişierul de ieşire towerx.out va conţine pe prima linie NN numere naturale separate prin câte un spațiu reprezentând elementele șirului în forma finală.

Restricţii şi precizări

  • 1N10 0001 \leq N \leq 10 \ 000

Exemplul 1

towerx.in

3

towerx.out

3 1 2

Explicație

Șirul trece prin următoarele forme.
0 0 00 \ 0 \ 0
1 0 01 \ 0 \ 0
0 2 00 \ 2 \ 0
0 2 10 \ 2 \ 1
3 0 03 \ 0 \ 0
3 1 03 \ 1 \ 0
3 0 23 \ 0 \ 2
3 1 23 \ 1 \ 2

Log in or sign up to be able to send submissions!