Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2018-09-28 19:41:58.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:entropy.in, entropy.outSursăACM-ICPC Faza Nationala 2018
AutorMihai CalanceaAdăugată de
Timp execuţie pe test0.05 secLimită de memorie524288 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Entropy

În general, faci săptămânal curăţenie în cameră şi ajungi să pui multe lucruri în cămară, ca să nu te gândeşti prea mult la ce vrei să faci cu ele. Faci lunar curăţenie în cămară şi pui pe balcon lucrurile care nu mai încap. Azi faci curat pe balcon şi nu e prea veselă situaţia.

Conform creşterii tale de programator, vei sparge problema în probleme mai mici. Acum te vei ocupa de 3 cutii, fiecare conţinând cărţi, reviste sau ziare. Probabil ar trebui să le arunci pe toate, dar tu îţi doreşti să pui toate cărţile în cutia 1, toate revistele în cutia 2 şi toate ziarele în cutia 3. Cutiile funcţionează ca nişte stive, deci operaţiile posibile sunt de a lua un obiect din vârful unei cutii şi a-l plasa în vârful altei cutii.

Îţi doreşti să plasezi toate obiectele la locul lor folosind un număr rezonabil de operaţii.

Date de intrare

Fişierul de intrare entropy.in va conţine pe prima sa linie valoarea T, reprezentând numărul de teste din fişier. Fiecare test conţine 3 linii, reprezentând conţinutul cutiei 1, 2, respectiv 3. O carte este codificată prin caracterul a, o revistă este codificată prin caracterul b, iar un ziar este codificat prin caracterul c. Vârful cutiei este "la dreapta", i.e ultimul caracter din descrierea unei cutii dă tipul obiectului din vârful cutiei respective.

Date de ieşire

În fişierul de ieşire entropy.out se vor afla T linii, fiecare linie descriind operaţiile care rezolvă testul corespunzător. Pentru o dimensiune redusă a output-ului, operaţiile vor fi codificate astfel:

- O mutare din vârful cutiei 1 în vârful cutiei 2 va fi codificată prin caracterul m.
- O mutare din vârful cutiei 1 în vârful cutiei 3 va fi codificată prin caracterul n.
- O mutare din vârful cutiei 2 în vârful cutiei 1 va fi codificată prin caracterul o.
- O mutare din vârful cutiei 2 în vârful cutiei 3 va fi codificată prin caracterul p.
- O mutare din vârful cutiei 3 în vârful cutiei 1 va fi codificată prin caracterul q.
- O mutare din vârful cutiei 3 în vârful cutiei 2 va fi codificată prin caracterul r.

Astfel, descrierea operaţiilor va fi un şir de caractere de acest tip. Puteţi consulta exemplul pentru clarificări.

Restricţii

  • 1 ≤ T ≤ 100
  • 1 ≤ Numărul de obiecte dintr-o cutie ≤ 100
  • Numărul total de operaţii folosite pentru rezolvarea unui test din cele T trebuie să fie cel mult egal cu 1300
  • Orice şir de operaţii care rezolvă un test din cele T şi respectă constrângerea de lungime de mai sus este considerat corect.

Exemplu

entropy.inentropy.out
1
a
b
cba
qr

Explicaţie

Primul test descrie o situaţie fericită în care este suficient să facem două mutări: prima din vârful cutiei 3 către vârful cutiei 1 şi a doua din vârful cutiei 3 către vârful cutiei 2. Orice altă soluţie care foloseşte cel mult 1300 de mutări este considerată corectă.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?