Baseball Game
阿新 • • 發佈:2017-09-25
題目 end 列表 簡單題 一個 span num cnblogs color
這道題為簡單題
題目:
思路:
利用棧,遍歷列表ops,如果是數字就存入列表a,sum加上數字,如果是C,判斷a是否還有數字,有就刪除,如果是D,判斷a是否還有數字,有就把num加上2倍a的最後一個數並將2倍之和的數添加到a中,如果是+,判斷a是否還有兩個數,有就將num加上那兩個數,並將後面這兩個數的和添加到a中。最後返回num
代碼:
1 class Solution(object): 2 def calPoints(self, ops): 3 """ 4 :type ops: List[str]5 :rtype: int 6 """ 7 a = [] 8 num = 0 9 for i in ops: 10 if i == ‘C‘: 11 if a: 12 num -= int(a.pop()) 13 elif i == ‘D‘: 14 if a: 15 num += 2 * int(a[len(a)-1])16 a.append(2 * int(a[len(a)-1])) 17 elif i == ‘+‘: 18 if len(a)>=2: 19 num = num + int(a[len(a)-1]) + int(a[len(a)-2]) 20 a.append(int(a[len(a)-1]) + int(a[len(a)-2])) 21 else: 22 a.append(i)23 num += int(i) 24 return num
Baseball Game