Fișierul intrare/ieșire | evalpostfix.in, evalpostfix.out | Sursă | Concurs IQ Academy | Clasa a 10-a | Șiruri de caractere |
---|---|---|---|
Autor | din folclor | Adăugată de | Teodor Plop • teodor94 |
Timp de execuție pe test | 0.05 sec | Limită de memorie | 4096 KB |
Scorul tău | N/A | Dificultate | N/A |
Vezi soluțiile trimise | Statistici
Evalpostfix (clasa a 10-a)
Se dă un șir de caractere ce reprezintă scrierea postfix (Forma Inversă Poloneză) a unei expresii aritmetice. Să se evalueze expresia și să se afișeze rezultatul obținut.
Descriere
Pentru mai multe informații, urmăriți descrierea problemei Inpostfix.
Date de intrare
Fișierul de intrare evalpostfix.in conține pe o singură linie șirul de caractere ce reprezintă notația postfix a unei expresii. Operanzii și operatorii expresiei sunt despărțiți între ei prin câte un spațiu.
Date de ieșire
În fișierul de ieșire evalpostfix.out se va scrie un singur număr întreg, valoarea obținută în urma evaluării expresiei.
Restricții
- 1 ≤ lungimea sirului ≤ 150.000
- Operatorii aritmetici din expresie sunt + – * /, unde / reprezintă câtul împărțirii a două numere întregi
- Operanzii sunt numere naturale
- Se garantează că rezultatul final și orice rezultat intermediar nu depășesc în modul 1.000.000.000 (1 miliard)
Exemplu
evalpostfix.in | evalpostfix.out | Explicație |
---|---|---|
1 2 * |
2 |
1 * 2 = 2 |
1 2 * 6 4 / + |
3 |
1 * 2 + 6 / 4 = 3 |
2 2 8 + * 4 / |
5 |
2 * (2 + 8) / 4 = 5 |
10 2 + 3 + |
15 |
10 + 2 + 3 = 15 |
1 20 3 + + |
24 |
1 + (20 + 3) = 24 |
1 2 3 * + |
7 |
1 + 2 * 3 = 7 |