Re: [閒聊] 每日leetcode

看板Marginalman作者 (麵包屌)時間7月前 (2025/05/06 00:59), 7月前編輯推噓2(202)
留言4則, 3人參與, 7月前最新討論串1419/1548 (看更多)
※ 引述《yam276 (史萊哲林的優等生)》之銘言: : 790. Domino and Tromino Tiling : https://leetcode.com/problems/domino-and-tromino-tiling/ : 題意: : 你有2x1跟L型的多米諾 : 能拚出幾種2xn的矩陣 這題也寫好多次了 在填第i行的時候可以參考i-1行的狀態 有四種狀態 a.上面一格 b.下面一格 c.兩格都有 d.都是空的 第i行要 a 的話 i-1行可以是 b (插直的) 或 d (插L) i-2行 |i-1行 ||i行 ||| O OXX O OXX OO -> OO O -> OX 第i行要 b 的話 OO OO O OX O -> OXX O -> OXX 第i行要 c 的話 OO OOX O OXX OO OOX O OXX O -> OXX OO -> OOX OO -> OOX O -> OYY 後面兩種很容易重複計算 要小心 第i行要 d 的話 OO OO OO -> OO 就是 i-1 的 c O OX O -> OX 不用加上這種狀況的原因是他已經被包含在 i-1 的 c 裡面了 最後考慮一下起始狀態就好 填第一行的時候左邊等於是牆壁 也就是兩格都有的狀態 塞不進L class Solution: def numTilings(self, n: int) -> int: up, bot, both, empty = 0, 0, 1, 0 mod = 10**9+7 for i in range(n): up, bot, both, empty = bot+empty, up+empty, empty+up+bot+both, both return both % mod -- 蛤? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.228.8.244 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1746464374.A.750.html

05/06 01:02, 7月前 , 1F
你為什麼這麼帥又這麼卷
05/06 01:02, 1F
真的沒有很帥 我很能客觀評價自己

05/06 01:02, 7月前 , 2F
這題這麼經典ㄛ
05/06 01:02, 2F

05/06 01:02, 7月前 , 3F
你的寫法好厲害==我好崇拜你
05/06 01:02, 3F
練DP應該都會看過 不過其實大家寫法都差不多 ※ 編輯: pandix (36.228.8.244 臺灣), 05/06/2025 01:08:23

05/06 07:04, 7月前 , 4F
別卷了
05/06 07:04, 4F
文章代碼(AID): #1e6EvsTG (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1e6EvsTG (Marginalman)