Re: [閒聊] 每日leetcode

看板Marginalman作者 (神楽めあ的錢包)時間1年前 (2024/10/27 16:21), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1053/1554 (看更多)
1277. Count Square Submatrices with All Ones 給一個m*n的矩陣 請回傳這個矩陣有幾個正方形(所有元素都是1) 思路: 用DP dp[i][j]表示右下角為matrix[i][j]的正方形個數 當matrix[i][j]==1時 dp[i][j]=min(dp[i-1][j],dp[i][j-1],dp[i-1][j-1])+1 這樣就可以計算出有幾個正方型了 golang code : func countSquares(matrix [][]int) int { ans := 0 n, m := len(matrix), len(matrix[0]) for i := 0; i < n; i++ { ans += matrix[i][0] } for i := 1; i < m; i++ { ans += matrix[0][i] } for i := 1; i < n; i++ { for j := 1; j < m; j++ { if matrix[i][j] == 1 { length := min(matrix[i-1][j], matrix[i][j-1]) length = min(length, matrix[i-1][j-1]) ans += length + 1 matrix[i][j] = length + 1 } } } return ans } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.71.215.175 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1730017271.A.09D.html
文章代碼(AID): #1d7VVt2T (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1d7VVt2T (Marginalman)