用dfs,不正确,求助!大佬!
查看原帖
用dfs,不正确,求助!大佬!
1029575
Alg_orithm楼主2024/4/4 11:16
using namespace std;
bool a[101][101];
int i,j,n,m,ans=0;
char c;
void f(int x,int y)
{
    if(x>n||x<=0||y>m||y<=0||!a[x][y])
        return;
    a[x][y]=false;
    f(x+1,y);
    f(x,y+1);
    f(x-1,y);
    f(x,y-1);
}
int main()
{
    cin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
        {
            cin>>c;
            if(c=='0')
            	a[i][j]=false;
            else
            	a[i][j]=true;
        }
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            if(a[i][j])
            {
                ans++;
                f(i,j);
            }
    cout<<ans;
    return 0;
}
2024/4/4 11:16
加载中...