你現在是一場採用特殊賽制棒球比賽的記錄員。這場比賽由若干回合組成,過去幾回合的得分可能會影響以後幾回合的得分。
比賽開始時,記錄是空白的。你會得到乙個記錄操作的字串列表 ops,其中 ops[i] 是你需要記錄的第 i 項操作,ops 遵循下述規則:
整數 x - 表示本回合新獲得分數 x
"+" - 表示本回合新獲得的得分是前兩次得分的總和。題目資料保證記錄此操作時前面總是存在兩個有效的分數。
"d" - 表示本回合新獲得的得分是前一次得分的兩倍。題目資料保證記錄此操作時前面總是存在乙個有效的分數。
"c" - 表示前一次得分無效,將其從記錄中移除。題目資料保證記錄此操作時前面總是存在乙個有效的分數。
請你返回記錄中所有得分的總和。
classsolution:
def calpoints(self, ops: list[str]) ->int:
res=
for val in
ops:
if val.lstrip('
-').isdigit():#
負號判斷
elif val=='d'
: cur=res[-1]#
把剛剛放進棧的元素拿出來
elif val=='c'
: res.pop()
elif val=='+'
: cur1=res[-1]
cur2=res[-2]
return sum(int(i) for i in res)
每日一題 力扣 計畫
98 驗證二叉搜尋樹 問題給定乙個二叉樹,判斷其是否是乙個有效的二叉搜尋樹。假設乙個二叉搜尋樹具有如下特徵 1.節點的左子樹只包含小於當前節點的數。2.節點的右子樹只包含大於當前節點的數。3.所有左子樹和右子樹自身必須也是二叉搜尋樹。示例 1 輸入 2 1 3 輸出 true示例2 輸入 5 1 4...
力扣每日一題 6 14
1300 轉變陣列後最接近目標值的陣列和 給你乙個整數陣列 arr 和乙個目標值 target 請你返回乙個整數 value 使得將陣列中所有大於 value 的值變成 value 後,陣列的和最接近 target 最接近表示兩者之差的絕對值最小 如果有多種使得和最接近 target 的方案,請你返...
每日一題力扣48
給定乙個 n n 的二維矩陣 matrix 表示乙個影象。請你將影象順時針旋轉 90 度。你必須在 原地 旋轉影象,這意味著你需要直接修改輸入的二維矩陣。請不要 使用另乙個矩陣來旋轉影象。正解 旋轉90度就是,先鏡面對稱,再轉置即可 class solution defrotate self,mat...