vijos1057题解
题目:
永恒の灵魂最近得到了面积为n*m的一大块土地(高兴ING^_^),他想在这块土地上建造一所房子,这个房子必须是正方形的。
但是,这块土地并非十全十美,上面有很多不平坦的地方(也可以叫瑕疵)。这些瑕疵十分恶心,以至于根本不能在上面盖一砖一瓦。
他希望找到一块最大的正方形无瑕疵土地来盖房子。
和此题类似的题目很多,解法就是预处理+动规(DP不太熟,不知道这是不是DP)
var
  a:array[0..1500,0..1500] of integer;
  up,left,f:array[0..1500,0..1500] of longint;
  n,m,i,j,ans:longint;
function min(a,b,c:longint):longint;
var
  t:longint;
begin
  if a<b then t:=a else t:=b;
  if t<c then exit(t);
  exit(c);
end;
begin
  readln(n,m);
  for i:=1 to n do
    for j:=1 to m do
      read(a[i,j]);
  for i:=1 to n do
    begin
      left[i,1]:=1;
      for j:=2 to m do
        if a[i,j]=a[i,j-1] then left[i,j]:=left[i,j-1]+1
                            else left[i,j]:=1;
    end;
  for j:=1 to m do
    begin
      up[1,j]:=1;
      for i:=2 to n do
        if a[i,j]=a[i-1,j] then up[i,j]:=up[i-1,j]+1
                            else up[i,j]:=1;
    end;
  for i:=1 to n do
    for j:=1 to m do
     if a[i,j]=1 then
      begin
        f[i,j]:=min(f[i-1,j-1]+1,left[i,j],up[i,j]);
        if f[i,j]>ans then
          ans:=f[i,j];
      end;
  writeln(ans);
end.
												
											vijos1057题解的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
		
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
 - noip2016十连测题解
		
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
 - BZOJ-2561-最小生成树 题解(最小割)
		
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
 - Codeforces Round #353 (Div. 2) ABCDE 题解 python
		
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
 - 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
		
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
 - 2016ACM青岛区域赛题解
		
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
 - poj1399 hoj1037 Direct Visibility 题解 (宽搜)
		
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
 - 网络流n题 题解
		
学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...
 - CF100965C题解..
		
求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...
 
随机推荐
- 实时语音视频技术webrtc的编译总结
			
webrtc编译教程 一.安装depot_tools工具 首先你的电脑上安装了git 1) 下载depot_tools cd到下载的目录下 git clone https://chromium. ...
 - 关于bootstrap table 的可编辑列表的实例
			
最近被安排到一个新的项目里,首先被分配了一个成果管理的模块,虽然是简单的增删改查,但是也费了不少功夫. 其中耽误最长的时间就是form中嵌套了两个可编辑列表的子表.废话不说上干货 = = 参考资料 1 ...
 - 03 编译安装apache的简易配置
			
1.监听端口,默认为80,在主配置文件 /etc/httpd24/httpd.conf中可以更改 2.持久连接 Include /etc/httpd24/extra/httpd-default.con ...
 - Zepto源码分析-ajax模块
			
源码注释 // Zepto.js // (c) 2010-2015 Thomas Fuchs // Zepto.js may be freely distributed under the MIT l ...
 - PropertyGrid自定义控件
			
PropertyGrid是一个很强大的控件,使用该控件做属性设置面板的一个好处就是你只需要专注于代码而无需关注UI的呈现,PropertyGrid会默认根据变量类型选择合适的控件显示.但是这也带来了一 ...
 - Java经典编程题50道之二十
			
有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和. public class Example20 { public static void ma ...
 - socket聊天室(服务端)(多线程)(TCP)
			
#include<string.h> #include<signal.h> #include<stdio.h> #include<sys/socket.h&g ...
 - Javascript及Jquery获取元素节点以及添加和删除操作
			
用了javascript和jquery很久,把所有元素节点的操作总结了下,放在博客上作为记录. Javascript获取元素的主要方式有三种 1.document.getElementById('ma ...
 - Android布局方式
			
1. LinearLayout(线性布局) android:orientation="vertical" android:layout_width="wra ...
 - ActiveMQ 和消息简介
			
Apache ActiveMQ 是远程系统间进行通信的消息代理,实现了 JMS(Java Message Service,Java 消息服务).尽管 ActiveMQ 是使用 Java 写的,但是其提 ...