当前位置: 首页 > article >正文

Leetcode Hot100 第六题 221. 最大正方形

在这里插入图片描述
动态规划题目

class Solution {
public:
    int maximalSquare(vector<vector<char>>& matrix) {
        // dp[i][j]定义为以(i,j)为右下角的只包含 '1'的最大正方形的边长
        // 确定转移方程,如果(i,j)元素为'1',dp[i][j] = min(min(dp[i-1][j-1],dp[i][j-1]),dp[i-1][j])+1;
        vector<vector<int>> dp = vector<vector<int>>(matrix.size(),vector<int>(matrix[0].size()));
        int result = 0;
        for(int i=0;i<matrix.size();i++){
            if(matrix[i][0]=='1')
                dp[i][0] = 1;
            else
                dp[i][0] = 0;
            result = max(result,dp[i][0]);
        }
        for(int j=0;j<matrix[0].size();j++){
            if(matrix[0][j]=='1')
                dp[0][j] = 1;
            else
                dp[0][j] = 0;
            result = max(result,dp[0][j]);
        }
        
        for(int i=1;i<matrix.size();i++){
            for(int j=1;j<matrix[0].size();j++){
                if(matrix[i][j]=='0') dp[i][j]=0;
                else{
                    dp[i][j] = min(min(dp[i-1][j-1],dp[i][j-1]),dp[i-1][j])+1;
                    result = max(result,dp[i][j]);
                }
            }
        }
        return result*result;
    }
};

http://www.kler.cn/a/487794.html

相关文章:

  • 抢占欧洲电商高地,TikTok 运营专线成 “秘密武器”
  • 《深度学习模型在鸿蒙分布式框架下的跨设备高效之旅》
  • leetcode 5. 最长回文子串
  • Mysql - 多表连接和连接类型
  • BeanFactory与factoryBean 区别,请用源码分析,及spring中涉及的点,及应用场景
  • 基于phpstudy快速搭建本地php环境(Windows)
  • IP 地址与蜜罐技术
  • K8s Pod OOMKilled,监控却显示内存资源并未打满
  • Python AI教程之十五:监督学习之决策树(6)高级算法C5.0决策树算法介绍
  • HTML5 语义元素:网页构建的新时代
  • 【C++】xml烧录 调用twinCat流程自动化
  • [免费]微信小程序(高校就业)招聘系统(Springboot后端+Vue管理端)【论文+源码+SQL脚本】
  • 问题清单:@DS数据库配置注解失效
  • 标题: [原创](Modern C++)现代C++的关键性概念: 初步了解std之下的几个常用子命名空间
  • DockerCompose玩转Kafka单体与集群部署,Redpanda Console助力可视化管理
  • 5.在 Vue 3 中使用 ECharts 实现菱形渐变雷达图
  • C# 队列的各种使用方法 private static ConcurrentQueue
  • 《跨西伯利亚铁路模拟器抢先版》Build16645718官方中文学习版
  • GPTs与鸿蒙HarmonyOS应用开发的深度融合:探索与实践
  • 1. 使用springboot做一个音乐播放器软件项目【前期规划】
  • 28.Java 实现线程间定制化通信
  • 学英语学压测:08 jmeter html测试报告测试报告的3种生成方式
  • linux截取日志信息
  • Nginx:HTTP 方法控制
  • 解决idea中无法拖动tab标签页的问题
  • [Unity]发包前遇到的坑之GridLayoutGroup