301000: CF188H. Stack

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

H. Stacktime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard output

In this problem we'll use a stack which supports two types of operations:

  • Push a given number on the stack.
  • Pop two numbers from the stack, perform a given operation (addition or multiplication) on them and push the result on the stack.

You are given a string which describes the sequence of operations to be performed on the stack. i-th character corresponds to i-th operation:

  • If i-th character is a digit, push the corresponding number on the stack.
  • If i-th character is «+» or «*», perform the corresponding operation.

Initially the stack is empty. Output the topmost number on the stack after executing all given operations.

Input

The only line of input contains a string of operations, consisting of characters «+», «*» and digits (0..9). The length of the string will be between 1 and 20 characters, inclusive.

The given sequence of operations is guaranteed to be correct, i.e. the stack will have at least two elements before every math operation. The numbers on the stack will never exceed 106.

Output

Output a single number — the topmost element of the stack after performing all given operations.

ExamplesInput
12+3*66*+
Output
45
Input
149
Output
9
Note

In the first case the stack will end up containing a single number — the result of calculating (1+2)*3+6*6.

In the second case there are no math operations, so the answer will be the last number pushed on the stack.

Input

加入题单

上一题 下一题 算法标签: