Thứ Sáu, 13 tháng 5, 2022

QBSQUARE C++

#include <bits/stdc++.h>
using namespace std;
int m,n,a[1001][1001],b[1001][1001],maxx;
int minn(int x, int y, int z)
{
    int m=x;
    if(y<m) m=y;
    if(z<m) m=z;
    return m;
}
void giai()
{
    maxx=0;
    for(int i=1;i<=m;i++)
    {
        for(int j=1;j<=n;j++)
        {
            if(a[i][j]==a[i-1][j]==a[i][j-1]==a[i-1][j-1])
                b[i][j]=minn(b[i-1][j],b[i][j-1],b[i-1][j-1])+a[i][j];
            else b[i][j]=1;
            if(b[i][j]>maxx) maxx=b[i][j];
        }
    }
    cout<<maxx;
}

void nhap()
{
    scanf("%d %d",&m,&n);
    for(int i=1;i<=m;i++)
    {
        for(int j=1;j<=n;j++)
            scanf("%d",&a[i][j]);
    }
}
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    freopen("qbsquare.inp","r",stdin);
    freopen("qbsquare.out","w",stdout);
    nhap();

   giai();
}

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.