jzoj 2548. 【NOIP2011模拟9.4】最大正方形
来源:互联网 发布:淘宝客服要开通管理 编辑:程序博客网 时间:2024/06/05 17:40
题目描述
给一个N*N的01矩阵, 求一个面积最大的全为1的正方形子矩阵. 输出它的面积.
输入
输入文件square.in的第一行包含一个正整数N.
接下来N行, 每行N个数, 保证不是0就是1. 每行相邻两个数之间没有空格.
输出
输出文件为square.out,仅包含一个整数表示最大的全1子正方形矩阵的面积。
思路
刚开始想直接用字符串进行比较,但会超时,在博客ID:qq_34593871的指点下,学会了一种神奇的方法,就是当前的这个点只可能从左上方的三个点得来,但是因为必须是正方形,所以我们要找到三个里面最小的那个加上一就是当前点的正方形的边长了
~( ̄▽ ̄~)(~ ̄▽ ̄)~
var a,f:array[0..1001,0..1001] of longint; i,j,k,n,m,s,max:longint; st:ansistring;function min(x,y,z:longint):longint;var m:longint;begin m:=maxlongint; if m>x then m:=x; if m>y then m:=y; if m>z then m:=z;end;begin readln(n); for i:=1 to n do begin readln(st); for j:=1 to n do if st[j]='0' then a[i,j]:=0 else a[i,j]:=1; end; for i:=1 to n do for j:=1 to n do if a[i,j]=1 then begin f[i,j]:=min(f[i-1,j],f[i,j-1],f[i-1,j-1])+1; if max<f[i,j] then max:=f[i,j]; end; writeln(max*max);end.
1 0
- jzoj 2548. 【NOIP2011模拟9.4】最大正方形
- 2548. 【NOIP2011模拟9.4】最大正方形 (StandardIO)
- 2548. 【NOIP2011模拟9.4】最大正方形 (Standard IO)
- jzoj 2549. 【NOIP2011模拟9.4】家庭作业
- jzoj 2542. 【NOIP2011模拟9.1】统计
- jzoj 2543. 【NOIP2011模拟9.1】直角三角形
- jzoj 2545. 【NOIP2011模拟9.3】跳舞
- jzoj 2546. 【NOIP2011模拟9.3】遥控车
- jzoj 2553. 【NOIP2011模拟9.7】射命丸文
- jzoj 2567. 【NOIP2011模拟9.17】电话时间
- jzoj 2568. 【NOIP2011模拟9.17】地铁建设
- Jzoj 2555. 【NOIP2011模拟9.7】雾雨魔理沙
- jzoj 2557. 【NOIP2011模拟9.9】单词分类
- jzoj 2558. 【NOIP2011模拟9.9】过河问题
- jzoj 2559. 【NOIP2011模拟9.9】最短路
- jzoj 2541. 【NOIP2011模拟9.1】方格取数
- jzoj 2544. 【NOIP2011模拟9.3】作弊的发牌者
- jzoj 2554. 【NOIP2011模拟9.7】帕秋莉·诺蕾姬
- Hibernate关联映射之一对多,多对一以及双向一对多
- 量化分析师的Python日记
- lintcode178. graph valid tree 图是否是树
- POJ 1753 Flip Game 棋盘状态搜索
- JUnit4学习笔记
- jzoj 2548. 【NOIP2011模拟9.4】最大正方形
- mipi差分信号原理
- html+js的遮罩实现
- OPENCV入门教程二十:Canny边缘检测
- Android 如何通过menu id来得到menu item 控件
- Javaweb异常提示信息统一处理
- 一篇专题让你秒懂GCD死锁问题!
- POJ 2524 Ubiquitous Religions 并查集
- 算法-一种数组环形队列的数据结构