Fișierul intrare/ieșire | postinfix.in, postinfix.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 | 1 sec | Limită de memorie | 16384 KB |
Scorul tău | N/A | Dificultate | N/A |
Vezi soluțiile trimise | Statistici
Postinfix (clasa a 10-a)
Se dă un șir de caractere ce reprezintă scrierea postfix (Forma Inversă Poloneză) a unei expresii aritmetice. Să se afișeze scrierea infix a acesteia.
Descriere
Pentru mai multe informații, urmăriți descrierea problemei Inpostfix.
Date de intrare
Fișierul de intrare postinfix.in conține pe o singură linie șirul de caractere ce reprezintă notația postfix a unei expresii.
Date de ieșire
În fișierul de ieșire postinfix.out se va găsi un șir de caractere reprezentând notația infix a expresiei.
Restricții
- 1 ≤ lungimea sirului ≤ 100.000
- Operanzii expresiei sunt formați dintr-o singură literă mare din alfabetul englez [A...Z]
- Operatorii aritmetici din expresie sunt + – * /
Precizări
- Se va accepta orice soluție validă. De exemplu:
- ABC+*D/ -> A*(B+C)/D = (A*(B+C))/D = ((A*(B+C))/D) = ((A*(B+C))/D)
- Altfel spus, vor fi punctate și soluțiile care nu au un număr minim de paranteze în scrierea infix
- Mai precis, în evaluarea sursei se va converti scrierea infix din fișierul de ieșire în postfix, iar rezultatul obținut va fi comparat cu expresia din fișierul de intrare
- Fișierul de ieșire trebuie să conțină maxim 200.000 caractere!
Exemplu
postinfix.in | postinfix.out |
---|---|
AA* |
A*A |
AB*CD/+ |
A*B+C/D |
ABC+*D/ |
A*(B+C)/D |
AB+C+ |
A+B+C |
ABC++ |
A+(B+C) |
ABC*+ |
A+B*C |