-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path150.py
More file actions
20 lines (19 loc) · 720 Bytes
/
150.py
File metadata and controls
20 lines (19 loc) · 720 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class Solution:
def evalRPN(self, tokens: List[str]) -> int:
rpnStack = []
operations = {"+", "-", "*", "/"}
for i in range(len(tokens)):
if (tokens[i] in operations):
v1 = rpnStack.pop()
v2 = rpnStack.pop()
if (tokens[i] == "+"):
rpnStack.append(v2 + v1)
elif (tokens[i] == "-"):
rpnStack.append(v2 - v1)
elif (tokens[i] == "/"):
rpnStack.append(int(v2 / v1))
elif (tokens[i] == "*"):
rpnStack.append(v2 * v1)
else:
rpnStack.append(int(tokens[i]))
return rpnStack[0]