Pagini recente » Atasamentele paginii Profil patrickdan | adunare2 | Profil Cozeh | Diferente pentru problema/grafc intre reviziile 3 si 15 | Diferente pentru problema/expresii intre reviziile 7 si 2
Diferente intre titluri:
Expresii algebrice
expresii
Diferente intre continut:
==Include(page="template/taskheader" task_id="expresii")==
== include(page="template/taskheader" task_id="expresii") ==
O expresie algebrica poate fi reprezentata printr-un arbore. Putem evalua expresia parcurgand arborele ei corespunzator. Reprezentarea sub forma de arbore a unei expresii algebrice nu este obligatoriu unica. De exemplu, expresia {@1+2+3*4@} poate fi reprezentata prin urmatorii doi arbori:
!problema/expresii?expresii.jpg!
La o privire atenta observam ca succesiunea operatiilor {@+@} si {@*@} se mentine, iar ordinea operanzilor ramane neschimbata. In primul arbore ordinea evaluarii va fi: {@3*4 = 12@}; {@2+12 = 14@}; {@1+14 = 15@}. In al doilea arbore, expresia va fi evaluata astfel: {@1+2 = 3@}; {@3*4 = 12@}; {@3+12 = 15@}. Ambele reprezentari produc rezultatul dorit.
In aceasta problema vom considera expresii algebrice simple ce contin doar numere dintr-o singura cifra, {@+@}, {@*@} si paranteze. Expresia se evalueaza dupa regulile algebrice normale.
Poveste ...
h2. Cerinta
Determinati numarul de reprezentari sub forma de arbore care evalueaza expresia correct.
...
h2. Date de Intrare
h2. Restrictii
Prima linie a fisierului de intrare $expresii.in$ contine numarul de teste {$T$}. Urmatoarele linii contin cele $T$ teste. Fiecare test este format dintr-o singura linie, ce contine expresia algebrica.
...
h2. Date de Iesire
h2. Date de intrare
Pentru fiecare test, afisati in fisierul $expresii.out$ o linie ce respecta urmatorul format: "Numarul de arbori = {$XXX$}.", unde $XXX$ va fi inlocuit de numarul de reprezentari care vor evalua expresia correct. Daca expresia algebrica este incorecta din punct de vedere sintactic atunci numarul reprezentarilor corecte este {$0$}.
...
h2. Restrictii
h2. Date de iesire
* expresia nu contine spatii si lungimea ei este intre $1$ si $50$
* $0 < T < 120$
...
h2. Exemplu
table(example). |_. expresii.in |_. expresii.out |
| 6
1+2+3+4
(1+2)+(3+4)
1+2+3*4
1+2+(3*4)
1+*7
1+2*(3+(4*5)
| Numarul de arbori = 5.
Numarul de arbori = 1.
Numarul de arbori = 2.
Numarul de arbori = 2.
Numarul de arbori = 0.
Numarul de arbori = 0. |
| expresii.in | expresii.out |
| linia1
linia2
linia3
| linia1
linia2
|
==Include(page="template/taskfooter" task_id="expresii")==
== include(page="template/taskfooter" task_id="expresii") ==
Nu exista diferente intre securitate.
Diferente intre topic forum: