Postfix Notation

View as PDF

Submit solution

Points: 7
Time limit: 1.4s
Memory limit: 64M

Author:
Problem types

We are familiar with infix notation for representing expressions, where the operator is placed infix between the operands, as in 5 * 5. Given an expression in postfix notation, such as 5 5 *, evaluate the expression and print it to standard output, rounded to one decimal place.

Valid operands are * (multiplication), / (division), + (addition), - (subtraction), % (mod), and ^ (exponentiation).

Input Specification

A valid postfix expression. The input will have no more than 50 characters, and the value of each number in the input and each intermediate result will be less than or equal to 1000.

Output Specification

The result of the evaluation. The answer will be considered correct if its absolute or relative error does not exceed 10^{-1}.

Sample Input 1

5 5 +

Sample Output 1

10.0

Sample Input 2

5 5 + 6 * 8 -

Sample Output 2

52.0

Comments


  • 0
    Olly_Onion99  commented on Feb. 6, 2026, 3:39 a.m.

    For those who aren't familiar with postfix, it's posible for an expression like 12345-++* which equals 4: 1*(2+(3+(4-5)))


  • 1
    anasschoukri2  commented on Aug. 25, 2017, 3:23 p.m.

    input

    what is the type of numbers in input ??


    • 1
      Pleedoh  commented on Aug. 25, 2017, 4:41 p.m.

      Just use floating point


  • 116
    quantum  commented on Sept. 14, 2014, 12:59 a.m. edit 2

    Reverse Polish Sausage.