682. Baseball Game (棒球比賽)

更新於 發佈於 閱讀時間約 1 分鐘


英文版點我中文版點我


↑看個小廣告,支持好內容↑


"C": 將前一局分數作廢
"D": 將前一局分數乘以雙倍
"+": 將前兩局分數相加


這三條規則有什麼共通點?它們都是從計分板的末端去取資料,我們至少得知道末兩項是什麼,分數才能往下更新:

// Case1: [3,1,D,+]
策略:先加上這局的分數,再去更新末兩項

3: sum=0+3=3, prev2=X, prev1=3
1: sum=3+1=4, prev2=3, prev1=1
D: sum=4+2=6, prev2=1, prev1=2 (D:前一局兩倍)
+: sum=6+3=9, prev2=2, prev1=3 (+:前兩局加總)


乍看之下可行,但萬一出現了 C 呢?末兩項也得跟著還原,可是變數已經更新,再往前的資料已無法溯回 ...


Stack

計分板的寫入和移除都是發生在資料的末端,是時候讓 Stack 登場了!

後進者先出 (LIFO, Last-In-First-Out) 是 Stack 的特徵

後進者先出 (LIFO, Last-In-First-Out) 是 Stack 的特徵

Stack 可以透過陣列的 push()pop() 來實現,照著規則建立計分板陣列,最後再將各局分數加總就可以了,再幫你複習一次迭代 XD

// acc:累積值、curr:陣列項
return arr.reduce((acc, curr)=>acc+curr, 0);



  • 本題分類標籤:ArrayStackSimulation
  • 本題正解率=75.2%

❤️ 若內容對你實用,歡迎追蹤本專題,或小額贊助支持~
⭐ 這是我的第 9 篇刷題筆記,完整解題索引看這裡 → Here

留言
avatar-img
留言分享你的想法!
avatar-img
LeetCode King
55會員
59內容數
我要成為 LeetCode 王!快跟我一起踏上旅程!
LeetCode King的其他內容
2024/06/25
看到題目問「種類」時,集合就是你最好的朋友。
Thumbnail
2024/06/25
看到題目問「種類」時,集合就是你最好的朋友。
Thumbnail
2023/11/13
究竟誰是 i、誰又是 j?矩陣問題務必趁腦子清楚時才解 XDD
Thumbnail
2023/11/13
究竟誰是 i、誰又是 j?矩陣問題務必趁腦子清楚時才解 XDD
Thumbnail
2023/11/07
題目到底要我們做什麼?閱讀素養有多重要,試試這題就知道!
Thumbnail
2023/11/07
題目到底要我們做什麼?閱讀素養有多重要,試試這題就知道!
Thumbnail
看更多
你可能也想看
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
「欸!這是在哪裡買的?求連結 🥺」 誰叫你太有品味,一發就讓大家跟著剁手手? 讓你回購再回購的生活好物,是時候該介紹出場了吧! 「開箱你的美好生活」現正召喚各路好物的開箱使者 🤩
Thumbnail
原版的官方規則導入記分機制,但因為計算過於繁複,所以一般遊玩時較少採用。本變體規則旨在還原原規則的策略性,並保留平常的遊玩樂趣。 1. 配件準備 4枚不同顏色的棋子(紅、藍、黃、綠),以及一張標記0~15的場地。 2. 記分方式 一開始所有棋子都在0的位置。每一局結束時,贏家以外的所有人拿出
Thumbnail
原版的官方規則導入記分機制,但因為計算過於繁複,所以一般遊玩時較少採用。本變體規則旨在還原原規則的策略性,並保留平常的遊玩樂趣。 1. 配件準備 4枚不同顏色的棋子(紅、藍、黃、綠),以及一張標記0~15的場地。 2. 記分方式 一開始所有棋子都在0的位置。每一局結束時,贏家以外的所有人拿出
Thumbnail
The Return of Bingo 賓果遊戲的回歸
Thumbnail
The Return of Bingo 賓果遊戲的回歸
Thumbnail
做學問,不論是哪一門,都是需要練習的,圍棋雖然是一種孤軍奮戰的遊戲(除了聯棋外),偶爾還是可以像這樣有著大家一起努力的感覺。
Thumbnail
做學問,不論是哪一門,都是需要練習的,圍棋雖然是一種孤軍奮戰的遊戲(除了聯棋外),偶爾還是可以像這樣有著大家一起努力的感覺。
Thumbnail
1.不要讓棋譜或棋書擋到棋盤,視野可以看到完整的棋盤。 2.可以將佈局階段角落的變化背起來,之後進階背30手、50手,訓練記憶力。 3.有時可以猜猜看高手會下在哪個範圍,準確度慢慢提高,大局觀也會慢慢養成哦!
Thumbnail
1.不要讓棋譜或棋書擋到棋盤,視野可以看到完整的棋盤。 2.可以將佈局階段角落的變化背起來,之後進階背30手、50手,訓練記憶力。 3.有時可以猜猜看高手會下在哪個範圍,準確度慢慢提高,大局觀也會慢慢養成哦!
Thumbnail
願意捨棄一些棋子去換取更好的局面,是棋力進步的一個階段,也是長大後現實生活中能用上的觀念呢!
Thumbnail
願意捨棄一些棋子去換取更好的局面,是棋力進步的一個階段,也是長大後現實生活中能用上的觀念呢!
Thumbnail
我想 這就是圍棋最純粹的樣子吧
Thumbnail
我想 這就是圍棋最純粹的樣子吧
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News