#include <iostream>
using namespace std;
bool check(int **a, int y, int x, int len)
{
for(int i=0,c=a[y++][x++];i<=len;i++)
if(a[y-i][x]!=c||a[y][x-i]!=c) return false;
return true;
}
int subSqure(int **a, int h, int w, int y, int x)
{
int len=1;
for(;y<h-1&&x<w-1;y++,x++,len++)
if(!check(a, y, x, len)) break;
return len;
}
int maxSquare(int **a, int h, int w)
{
int mx=1;
for(int y=0;y<h-mx;y++)
for(int x=0;x<w-mx;x++)
mx=max(mx, subSqure(a, h, w, y, x));
return mx*mx;
}
main()
{
int h,w;cin>>h>>w;
int **a=new int*[h];
for(int i=0;i<h;i++)
{
a[i]=new int[w];
for(int j=0;j<w;j++) cin>>a[i][j];
}
cout<<maxSquare(a, h, w);
}
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:564 |
回文数(一) (C语言代码)浏览:809 |
C语言程序设计教程(第三版)课后习题7.5 (C语言代码)浏览:548 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:672 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:574 |
母牛的故事 (C语言代码)浏览:739 |
1017题解浏览:663 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:594 |
C二级辅导-温度转换 (C语言代码)浏览:802 |
分糖果 (C语言代码)浏览:980 |