#5 WA求调
查看原帖
#5 WA求调
461452
SunLegend楼主2022/11/19 16:35

下了测试点,发现本地比正确答案大1

#include <bits/stdc++.h>
using namespace std;
int a[2002][2002],n,m,f[2002][2002],s1,s2;
int main()
{
    cin>>n>>m;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            cin>>a[i][j];
            if((i+j)%2) a[i][j]=(a[i][j]+1)%2;
        }
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(a[i][j]) f[i][j]=min(min(f[i][j-1],f[i-1][j]),f[i-1][j-1])+1;
            s1=max(s1,f[i][j]);
        }
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(!a[i][j]) f[i][j]=min(min(f[i][j-1],f[i-1][j]),f[i-1][j-1])+1;
            s2=max(s2,f[i][j]);
        }
    }
    cout<<max(s1,s2);
}
2022/11/19 16:35
加载中...