Algrithm
Leet Code 227. Basic Calculator II
Sssspinach
2023. 2. 25. 14:53
class Solution:
def calculate(self, s: str) -> int:
sta = []
s = s.replace(" ", "")
def calc(num, op):
if op == '+':
sta.append(num)
elif op == '-':
sta.append(-num)
elif op == '*':
sta.append(sta.pop() * num)
else:
sta.append(int(sta.pop() / num))
num, operator = 0, '+'
for idx, val in enumerate(s):
if val in '+-*/':
calc(num, operator)
num = 0
operator = val
else:
num = num * 10 + int(val)
calc(num, operator)
return sum(sta)