博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
POJ 3494 Largest Submatrix of All 1’s(最大子图形)
阅读量:4582 次
发布时间:2019-06-09

本文共 867 字,大约阅读时间需要 2 分钟。

 

【题目链接】 

 

【题目大意】

  在01矩阵中求最大全1子矩形

 

【题解】

  在处理每个点的时候,继承上一个点等高度下的左右最大扩展,

  计算在该层的左右最大扩展,然后对于每个点更新答案即可。

 

【代码】

#include 
#include
using namespace std;const int N=2010;int i,j,n,m,ans,l[N],r[N],h[N],lmax,rmax,a[N][N];int main(){ while(~scanf("%d%d",&n,&m)){ ans=0; memset(h,0,sizeof(h)); for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)scanf("%d",&a[i][j]); for(int i=1;i<=m;i++)l[i]=1,r[i]=m; for(int i=1;i<=n;i++){ for(lmax=j=1;j<=m;j++)if(a[i][j]){ h[j]++; if(lmax>l[j])l[j]=lmax; }else h[j]=0,l[j]=1,r[j]=m,lmax=j+1; for(rmax=j=m;j;j--)if(a[i][j]){ if(rmax
ans)ans=(r[j]-l[j]+1)*h[j]; }else rmax=j-1; }printf("%d\n",ans); }return 0;}

转载于:https://www.cnblogs.com/forever97/p/poj3494.html

你可能感兴趣的文章
apache错误日志(error_log)记录等级
查看>>
通用的前端注册验证
查看>>
WPF 窗体中的 Canvas 限定范围拖动 鼠标滚轴改变大小
查看>>
django下的 restful规范 Drf框架 psotman的安装使用 及一些容易遗忘的小点
查看>>
Atitit.输入法配置说明v1 q229
查看>>
Atitit main函数的ast分析 数组参数调用的ast astview解析
查看>>
[转载]漫话:如何给女朋友介绍什么是死锁
查看>>
读书笔记——持有对象
查看>>
php header函数导出excel表格
查看>>
Jzoj1277最高的奶牛
查看>>
plsql中文乱码问题(显示问号)
查看>>
C# DataTbale详细操作
查看>>
用opencv检测人眼并定位瞳孔位置
查看>>
实现多项式的JAVA类
查看>>
Getting Started with the G1 Garbage Collector 转发
查看>>
HDU5036 Explosion(期望 bitset)
查看>>
有限自动机的构造和识别
查看>>
初试机器学习
查看>>
DNS的功能-域名空间、域名注册和域名解析
查看>>
Javascript模块化编程(三):require.js的用法(转)
查看>>