Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | multimi4.in, multimi4.out | Sursă | ONI 2018, clasa a 10-a, ziua 1 |
Autor | Alin Burta | Adăugată de | |
Timp execuţie pe test | 0.5 sec | Limită de memorie | 131072 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Multimi4
O mulţime cu elemente numere naturale poate fi scrisă într-o formă redusă dacă, ordonând crescător elementele ei, diferenţa dintre oricare două valori alăturate este aceeaşi. De exemplu, mulţimea D={11, 14, 17, 20, 23} poate fi scrisă sub forma D=11-23/3, precizând elementul minim, elementul maxim şi diferenţa dintre elemente. Date fiind N mulţimi scrise sub forma redusă, fiecare fiind notată cu o literă mare a alfabetului englez, se cere să se calculeze o expresie care poate conţine:
- operaţia de reuniune, notată cu +
- operaţia de intersecţie, notată cu *
- literele asociate mulţimilor
- paranteze rotunde.
Considerăm că valoarea expresiei este mulţimea obţinută după efectuarea operaţiilor specifice mulţimilor considerând că operaţiile de intersecţie au prioritate mai mare decât cele de reuniune.
Cunoscând forma redusă a celor N mulţimi şi o expresie, să se calculeze valoarea expresiei date.
Date de intrare
Datele de intrare se citesc din fişierul multimi4.in, care are următoarea structură:
- Pe prima linie se află numărul natural N, reprezentând numărul mulţimilor.
- Pe următoarele N linii se află formele reduse ale celor N mulţimi, câte o mulţime pe fiecare linie.
- Pe linia N+2 se află expresia ce trebuie calculată.
Date de ieşire
Datele de ieşire se vor scrie în fişierul multimi4.out, astfel:
- Pe prima linie se va scrie numărul elementelor mulţimii obţinute în urma evaluării expresiei date.
- Pe linia a doua se vor scrie, în ordine crescătoare, elementele mulţimii respctive, separate prin câte un spaţiu.
Restricţii
- 2 ≤ N ≤ 16
- Elementele mulţimilor sunt numere naturale cuprinse între 0 şi 109.
- Numărul elementelor unei mulţimi este maximum 104.
- Numărul caracterelor expresiei este cuprins între 3 şi 1000.
- Forma redusă a unei mulţimi şi expresia dată nu conţin spaţii.
- Se garantează că, pentru toate datele de test, valoarea expresiei nu poate fi mulţimea vidă.
- Se garantează că, în teste care totalizează 30 de puncte, expresia nu conţine paranteze.
- Se garantează că, în teste care totalizează 60 de puncte, cardinalul fiecărei mulţimi date la intrare nu depăşeşte valoarea 1000.
Exemplu
multimi4.in | multimi4.out | Explicatie |
---|---|---|
3 A=2-8/2 C=11-23/3 B=4-16/4 A*(B+C) | 2 4 8 | Mulţimile au următoarele elemente: A={2, 4, 6, 8} B={4, 8, 12, 16} C={11, 14, 17, 20, 23}. Efectuând operaţiile obţinem: B+C={4, 8, 11, 12, 14, 16, 17, 20, 23} şi A*(B+C)={4, 8}. |
3 A=2-7/1 B=1-5/1 C=3-9/3 B*A+A*C | 5 2 3 4 5 6 | Mulţimile au următoarele elemente: A={2, 3, 4, 5, 6, 7} B={1, 2, 3, 4, 5} C={3, 6, 9}. Efectuând operaţiile obţinem: B*A={2, 3, 4, 5}, A*C={3, 6}, B*A+A*C={2, 3, 4, 5, 6}. |