== include(page="template/taskheader" task_id="puzzle") ==
Poveste si cerinta...
Unul dintre jocurile preferate ale lui Temistocle este un puzzle în care el are la dispoziţie un cuvânt, fiecare literă a acestuia fiind scrisă pe câte o plăcuţă. Iniţial, toate plăcuţele sunt amestecate şi aşezate într-o ordine oarecare pe un suport liniar, poziţiile plăcuţelor fiind numerotate de la stânga la dreapta, începând cu 1.
Dacă se alege o plăcuţă drept pivot, se obţin două grupe:
* grupa 1 - formată din toate plăcuţele din stânga plăcuţei-pivot, inclusiv aceasta;
* grupa 2 - formată din toate plăcuţele din dreapta plăcuţei-pivot, fără aceasta.
După alegerea plăcuţei-pivot, toate plăcuţele din grupa 1, dacă există, se deplasează circular spre stânga cu exact o poziţie, iar toate plăcuţele din grupa 2, dacă există, se deplasează circular spre dreapta, cu exact o poziţie, ca în figura de mai jos, după care plăcuţele se renumerotează, de la stânga la dreapta, începând cu 1.
Scopul jocului este ca prin alegerea unui şir potrivit de plăcuţe-pivot să se obţină o aşezare a plăcuţelor, astfel încât cuvântul format din literele scrise pe acestea, de la stânga la dreapta, să fie identic cu cuvântul corect.
h2. Date de intrare
Fisierul de intrare $puzzle.in$ ...
In fisierul de intrare $puzzle.in$ se află
* pe prima linie, cuvântul corect;
* pe a doua linie, cuvântul format prin aşezarea iniţială a plăcuţelor.
h2. Date de iesire
In fisierul de iesire $puzzle.out$ ...
In fisierul de iesire $puzzle.out$ se vor scrie, separate prin câte un spaţiu, numerele naturale, reprezentând poziţiile plăcuţelor-pivot, în ordinea alegerii lor. Şirul se încheie cu numărul 0, care nu corespunde niciunei plăcuţe, ci reprezintă finalul jocului.
h2. Restrictii
* $... ≤ ... ≤ ...$
* Fiecare cuvant are cel mult 250 de litere.
* Dacă există mai multe soluţii, se va furniza una singură, nu neapărat optimă.
h2. Exemplu
table(example). |_. puzzle.in |_. puzzle.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
| abc
bac
| $2 0$
|
| abcabc
aabbcc
| $6 2 2 0$
|
|xyz
xyz
| $0$
|
h3. Explicatie