这道题按照题意,用栈来实现即可。
简单题
class Solution(object):
def calPoints(self, ops):
"""
:type ops: List[str]
:rtype: int
"""
stack=[]
sum_score=0#总分
for o in ops:
if '0'<=o[0]<='9' or o[0]=='-':#整数
num=int(o)#转成整数
stack.append(num)
sum_score+=num
elif o=='+':
num=stack[len(stack)-1]+stack[len(stack)-2]
stack.append(num)
sum_score+=num
elif o=='D':
num=stack[len(stack)-1]*2
stack.append(num)
sum_score+=num
elif o=='C':
pop_value=stack.pop()
sum_score-=pop_value
return sum_score