Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2009-02-02 19:03:23.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:episoade.in, episoade.outSursăStelele Informaticii 2009, clasele 9-10
AutorSilviu-Ionut GanceanuAdăugată desilviugSilviu-Ionut Ganceanu silviug
Timp execuţie pe test0.25 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Episoade

Va era dor de Algorel? Iată ca au venit Stelele si e timpul sa apara iar în viaţa mondenă. De data asta concursul l-a prins uitându-se la un serial de desene animate. Cum tocmai a facut rost de un nou sezon ce are N episoade, Algorel ar vrea sa stie in ce ordine ar putea sa le vada. El stie de la un prieten o expresie care descrie cum se leaga episoadele intre ele. Expresia data respecta anumite reguli:

  • intr-o expresie pot aparea numerele de la 1 la N precum si caracterele: (),#
  • fiecare numar de la 1 la N apare o singura data in expresie iar fiecarui episod ii corespunde in mod unic un numar
  • un grup de episoade poate fi un singur episod sau o subexpresie ce decrie relatii intre mai multe episoade
  • , si # sunt operatori ce au urmatoarele propietati:
    • ge1 , ge2 - grupul de episoade ge1 trebuie vazut inainte de ge2
    • ge1 # ge2 - cele doua grupurile de episoade pot fi vazute in orice ordine dar fara sa se intercalaze
    • , are prioritate mai mare fata de #
  • parantezele pot aparea oriunde in expresie cu conditia sa fie bine inchise

Pentru a va ajuta sa intelegeti regulile, Algorel va da si cateva exemple:

expresieordini posibile
1#2,3,4
1 2 3 4
2 3 4 1
((3,(4#5),(1#(2,6))))
3 4 5 1 2 6
3 4 5 2 6 1
3 5 4 1 2 6
3 5 4 2 6 1

Acum Algorel are niste ordini posibile in care ar vrea sa vada episoadele pe care le-a gasit pe niste site-uri cu recomandari. El vrea sa stie care din aceste ordini corespund cu regulile descrise de expresie.

Date de intrare

Fişierul de intrare episoade.in va contine pe prima linie expresia pe care Algorel o stie. Pe a doua linie se afla T - numarul de ordini pe care Algorel le-a gasit pe internet. Pe urmatoarele T linii se afla numerele 1 .. N (N este numarul maxim care apare in expresie) separate prin spatii ce descriu o anumita ordine a episoadelor.

Date de ieşire

În fişierul de ieşire episoade.out veti afisa T linii pentru fiecare din cele T ordini. Pe linia i veti scrie 1 daca ordinea i din fisierul de intrare este posibila conform expresiei sau 0 in caz contrar.

Restricţii

  • 1 ≤ N ≤ 500
  • Lungimea expresiei nu depaseste 2000 de caractere
  • 1 ≤ T ≤ 30
  • Pentru 50% din teste 1 ≤ N ≤ 9

Exemplu

episoade.inepisoade.out
((3,(4#5),(1#(2,6))))
3
1 2 3 4 5 6
3 5 4 1 2 6
3 5 1 4 2 6
0
1
0
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?