首页 > 解决方案 > 为什么这个c编程代码中的答案总是0

问题描述

给你一张有 n 行 m 列的表格。每个单元格都用白色或黑色着色。考虑由黑色单元格创建的形状,这些形状的最大边框是多少?

形状是一组连接的单元格。如果两个单元共享一条边,则它们是连接的。请注意,任何形状都没有孔。

输入格式

第一行包含 t 表示测试用例的数量。每个测试用例的第一行包含 n,m 个整数,表示矩阵的行数和列数。这里,“#”代表黑色单元格,“.”代表黑色单元格。代表一个白细胞。接下来的 n 行中的每一行都包含 m 个整数。输出格式

打印形状的最大边框。我的代码如下。

#include<stdio.h>

int main()

{

    int t,n,m,i,j,max,l,c;

    scanf("%d",&t);

  for(l=0;l<t;l++)

{
  

scanf("%d%d",&n,&m);

    char a[n][m];
        for(i=0;i<n;i++)

    {

        for(j=0;j<m;j++)

        {
scanf("%c",a[n][m]);
        }
    }
}
 for(l=0;l<t;l++)

{
   char a[n][m];
    max=0;

    for(i=0;i<n;i++)

    {
c=0;
        for(j=0;j<m;j++)

        {

        if(a[i][j]=='#')

         c++;

        }

     if(c>=max){

    max=c;}

    }

    
    printf("%d\n",max);


    }

}```
    


标签: c

解决方案


推荐阅读