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

csp信奥赛C++高频考点专项训练之前缀和差分 --【二维前缀和】:最大正方形

csp信奥赛C高频考点专项训练之前缀和差分 --【二维前缀和】最大正方形题目描述在一个n × m n\times mn×m的只包含0 00和1 11的矩阵里找出一个不包含0 00的最大正方形输出边长。保证矩阵里有至少一个1 11。输入格式输入文件第一行为两个整数n , m ( 1 ≤ n , m ≤ 100 ) n,m(1\leq n,m\leq 100)n,m(1≤n,m≤100)接下来n nn行每行m mm个数字用空格隔开0 00或1 11。输出格式一个整数最大正方形的边长。输入输出样例 1输入 14 4 0 1 1 1 1 1 1 0 0 1 1 0 1 1 0 1输出 12思路分析使用二维前缀和快速计算任意子矩阵的和。对于全1正方形其内部所有元素和为边长的平方。枚举所有可能的正方形左上角(i,j)和边长len利用前缀和公式sum s[ilen-1][jlen-1] - s[i-1][jlen-1] - s[ilen-1][j-1] s[i-1][j-1]判断是否等于len*len记录最大边长即可。代码实现#includebits/stdc.husingnamespacestd;intn,m,a,s[105][105],ans0;// s为前缀和数组ans记录最大边长intmain(){cinnm;// 读入行数列数for(inti1;in;i)for(intj1;jm;j){cina;// 读入当前值0/1s[i][j]s[i-1][j]s[i][j-1]-s[i-1][j-1]a;// 计算二维前缀和}// 枚举左上角和边长for(inti1;in;i)for(intj1;jm;j){for(intlen1;ilen-1njlen-1m;len){intsums[ilen-1][jlen-1]-s[i-1][jlen-1]-s[ilen-1][j-1]s[i-1][j-1];// 子矩阵和if(sumlen*len)ansmax(ans,len);// 全1则更新答案}}coutansendl;// 输出结果return0;}功能分析输入整数n,m和n×m的 0/1 矩阵。前缀和构建s[i][j]存储从(1,1)到(i,j)的矩形内 1 的个数。枚举判断三层循环枚举左上角(i,j)和边长len通过前缀和O(1)求得子矩阵和若等于len²则说明该正方形全为 1更新最大边长。输出最大全 1 正方形的边长。复杂度O(n·m·min(n,m))最坏100³ 1e6。【完整系列请查看专栏】信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转各种学习资料助力大家一站式学习和提升#includebits/stdc.husingnamespacestd;intmain(){cout########## 一站式掌握信奥赛知识! ##########;cout############# 冲刺信奥赛拿奖! #############;cout###### 课程购买后永久学习不受限制! ######;return0;}【秘籍汇总】完整csp信奥赛C学习资料1、csp/信奥赛C完整信奥赛系列课程永久学习https://edu.csdn.net/lecturer/7901 点击跳转2、CSP信奥赛C竞赛拿奖视频课https://edu.csdn.net/course/detail/40437 点击跳转https://edu.csdn.net/course/detail/41081 点击跳转3、csp信奥赛高频考点知识详解及案例实践CSP信奥赛C动态规划https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转CSP信奥赛C标准模板库STLhttps://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转信奥赛C提高组csp-s知识详解及案例实践https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转4、csp信奥赛冲刺一等奖有效刷题题解信奥赛C普及组CSP-J一等奖通关刷题题单及题解https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转信奥赛C提高组csp-j初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转信奥赛C提高组csp-s初赛复赛真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转5、GESP C考级真题题解GESP(C 一级二级三级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转GESP(C 四级五级六级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转GESP(C 七级八级)真题题解持续更新https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转· 文末祝福 ·#includebits/stdc.husingnamespacestd;intmain(){cout跟着王老师一起学习信奥赛C;cout 成就更好的自己 ;cout csp信奥赛一等奖属于你! ;return0;}
http://www.zskr.cn/news/1345673.html

相关文章:

  • 在自定义 Dynpro 中复用标准 SAP 报表逻辑,动态抓取标准程序的 ALV 数据
  • 保姆级教程:在Vue3项目中用ZLMediaKit+WebRTC实现超低延迟监控直播(附完整代码)
  • 2026汨罗市本地人必选的瓷砖空鼓专业维修公司TOP5推荐!卫生间空鼓翘边,厨房空鼓翘边,客厅空鼓翘边,全天响应,免费上门,5月专业瓷砖空鼓修复公司持证上岗师傅排名最新深度调研方案) - 一修哥修缮
  • 2026年封箱胶厂家推荐排行榜:透明、加厚、物流专用等各类封箱胶优质品牌大揭秘! - 速递信息
  • 如何在10分钟内搭建个人游戏云:Sunshine跨平台游戏串流终极指南
  • 大陆ARS408-21XX毫米波雷达CAN数据解析实战:从0x60A/0x60B帧到C++ Vector容器的完整处理流程
  • 【Lovable电商网站搭建黄金法则】:20年实战总结的7个避坑指南,新手3天上线不翻车
  • 三步搞定M3U8视频下载:告别命令行的图形化终极方案
  • 3分钟掌握Windows驱动管理的终极利器:DriverStore Explorer完全指南
  • NMP-PaK:近内存处理架构革新基因组组装技术
  • 如何快速掌握AKShare:Python金融数据接口的终极指南
  • 【Java并发编程】锁机制:synchronized:底层实现、对象头、锁升级流程(偏向锁→轻量级锁→重量级锁)、锁优化、可重入性(附《思维导图》+《面试高频考点清单》)
  • BetterJoy:让Switch手柄在Windows上重获新生的实用指南
  • 分析型离心机厂家推荐:从技术实力到售后服务,谁才是行业标杆? - 品牌推荐大师
  • TrollInstallerX终极指南:快速解锁iOS 14-16.6.1系统自由
  • ToastFish:如何在Windows通知栏中高效学习英语和日语词汇
  • 5分钟掌握跨平台鼠标连点器:彻底告别重复点击的终极指南
  • 硬件工程师必看:如何利用Boundary Scan和BSDL文件排查PCB焊接故障
  • 如何实现浏览器下载速度提升300%?Motrix WebExtension下载加速工具深度解析
  • 2026年四川再生资源回收行业深度观察:变压器/空调/电线电缆/酒店KTV设备回收七家实力厂家权威推荐 - 深度智识库
  • 小白程序员必看:收藏这份分词知识框架,轻松入门大模型!
  • 在自动化脚本中集成Taotoken API并观察其长时间运行的可靠性
  • Node.js 服务中如何异步调用 Taotoken 聚合接口实现 AI 功能集成
  • 生成式AI驱动的实时碳足迹计算与银行绿色服务重构
  • 抖音去水印下载终极方案:3分钟搞定批量下载与资源管理
  • 2026 玻璃钢冷却塔厂家、玻璃钢风机厂家综合排名:防腐节能实用选型指南 - 速递信息
  • 如何3步获取Beyond Compare 5永久授权密钥:开源工具全攻略
  • 5步彻底解决显卡风扇异常:FanControl专业调校完全指南
  • OpenCV鼠标事件避坑指南:setMouseCallback() 中 userdata 参数的正确用法与内存管理
  • 万亿参数模型为何只激活2%?稀疏激活工程实践全解析