P1387 最大正方形

Posted pangbi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P1387 最大正方形相关的知识,希望对你有一定的参考价值。

题意:找出最大的一个正方形;

思路:很显然,我们需要进行状态转移的点肯定要保证当前位置的权值为1

    所以,当我们在某个点进行转移的时候呢,只需要看3个点的情况,找出他们的最小值+1即可

      哪三个呢?  左 上 左上这三个点

技术图片
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 const int maxn=1e2+10;
 4 int dp[maxn][maxn];
 5 int main()
 6 {
 7     int n,m;
 8     scanf("%d%d",&n,&m);
 9     int ans=0;
10     for(int i=1;i<=n;i++)
11     for(int j=1;j<=m;j++){
12         int tmp;
13         scanf("%d",&tmp);
14         if(tmp==1){
15             dp[i][j]=min(min(dp[i-1][j],dp[i][j-1]),dp[i-1][j-1])+1;
16             ans=max(ans,dp[i][j]);
17         }
18     }
19     printf("%d
",ans);
20 }
View Code

 

以上是关于P1387 最大正方形的主要内容,如果未能解决你的问题,请参考以下文章

P1387 最大正方形

P1387 最大正方形

洛谷P1387 最大正方形

P1387 最大正方形

动态规划最大正方形 (洛谷 P1387 最大正方形)

P1387 最大正方形 |动态规划