Leetcode 1277. 统计全为 1 的正方形子矩阵 动态规划

原题链接:Leetcode 1277. 统计全为 1 的正方形子矩阵

cpp 复制代码
class Solution {
public:
    int countSquares(vector<vector<int>>& matrix) {
        int m = matrix.size();
        int n = matrix[0].size();
        vector<vector<int>> dp(m, vector<int>(n, 0));
        int res = 0;
        for (int i = 0; i < m; i++) {
            for (int j = 0; j < n; j++) {
                dp[i][j] = 0;
                if (matrix[i][j] == 1) {
                    if (i == 0 || j == 0) {
                        dp[i][j] = 1;
                    } else {
                        dp[i][j] = min(min(dp[i][j - 1], dp[i - 1][j]),
                                       dp[i - 1][j - 1]) +
                                   1;
                    }
                }
                res += dp[i][j];
            }
        }
        return res;
    }
};
相关推荐
时针滴滴答啊7 小时前
最大子数组和
算法·leetcode·职场和发展
重生之后端学习9 小时前
15. 三数之和[中等]✅
java·数据结构·算法·leetcode·职场和发展
傅科摆 _ py9 小时前
动态规划复习
算法·动态规划
Nil20810 小时前
leetcode 108有序数组转换为二叉搜索树
数据结构·算法·leetcode
hn小菜鸡10 小时前
LeetCode 763、划分字母区间
数据结构·算法·leetcode
云登指纹浏览器11 小时前
做TikTok矩阵号用什么指纹浏览器?2026年实战横评
线性代数·矩阵
土司大王12 小时前
LeetCode hot100——相交链表
算法·leetcode·链表
土司大王12 小时前
LeetCode hot100——回文链表
算法·leetcode·链表
evans在进步13 小时前
LeetCode 1143:最长公共子序列——Java 二维动态规划详解
java·leetcode·动态规划
重生之后端学习1 天前
283. 移动零[简单]✅
开发语言·数据结构·算法·leetcode·职场和发展