Un copil are jucării pe care, fiind copil de informatician, le-a numerotat de la la . El își ține jucăriile în dulap, în niște cutii, câte două jucării în fiecare cutie, cu excepția ultimei cutii, în care stă o singură jucărie dacă este impar.
Copilul și-a planificat ordinea în care vrea să se joace diseară cu jucăriile: (un vector de numere naturale între și , nu neapărat distincte). Totuși, camera este mică și copilul poate scoate din dulap o singură cutie odată. Ori de câte ori jucăria cu care urmează să se joace este în dulap (inclusiv prima dată), el trebuie să deschidă dulapul, să pună la loc în dulap cutia de afară (dacă există vreo cutie afară), și abia apoi să scoată cutia cu jucăria dorită. În așteptarea serii, copilul se hotărăște să-și reorganizeze jucăriile în cutii.
Cerință
Găsiți o așezare a jucăriilor în cutii care să minimizeze numărul de deschideri ale dulapului.
Date de intrare
Fișierul de intrare jucarii.in conține pe prima linie numerele și , iar pe a doua linie valorile , despărțite prin spații.
Date de ieșire
În fișierul de ieșire jucarii.out tipăriți pe prima linie numărul minim de deschideri ale dulapului. Pe a doua linie afișați o așezare optimă în cutii sub forma a numere, , despărțite prin spații, cu semnificația că:
- Jucăriile cu numerele și stau în prima cutie.
- Jucăriile cu numerele și stau în a doua cutie.
- Dacă este par, atunci jucăriile și stau în ultima cutie.
- Dacă este impar, atunci jucăria stă singură în ultima cutie.
Dacă există mai multe soluții, afișați-o pe oricare.
Restricții și precizări
- ;
- ;
- pentru orice .
| # | Punctaj | Restricții |
|---|---|---|
| 1 | 5 | , |
| 2 | 7 | , |
| 3 | 11 | |
| 4 | 13 | |
| 5 | 15 | |
| 6 | 49 | Fără restricții suplimentare |
Exemplu
jucarii.in
8 14
1 2 5 3 5 3 7 3 7 3 7 8 7 8
jucarii.out
7
7 8 5 3 2 1 4 6
Explicație
Copilul grupează jucăriile cu , cu , cu , cu . Apoi deschide dulapul de ori, astfel:
- Scoate cutia , se joacă cu , .
- Scoate cutia , se joacă cu , , , .
- Scoate cutia , se joacă cu .
- Scoate cutia , se joacă cu .
- Scoate cutia , se joacă cu .
- Scoate cutia , se joacă cu .
- Scoate cutia , se joacă cu , , , .