大佬们求解!自己idle acwing能正常出结果 但是洛谷全RE了
查看原帖
大佬们求解!自己idle acwing能正常出结果 但是洛谷全RE了
865289
master_mao楼主2024/3/21 19:39
n,m=map(int,input().split())
#n*m
juzhen=[[0]*(m+1) for _ in range(n+1)]
for j in range(1,n+1):
    a=list(map(int,input()))
    a.insert(0,0)
    for k in range(1,m+1):
        juzhen[j][k]=a[k]
flag=[[1]*(m+1) for _ in range(n+1)]
for j in range(1,n+1):
    for k in range(1,m+1):
        if juzhen[j][k]==0:
            flag[j][k]=0
xiabiao=[[0]*(m+1) for _ in range(n+1)]
def bfs(x,y,idx):
    global n,m
    if 0<x<=n and 0<y<=m and flag[x][y]!=0:
        flag[x][y]=0
        xiabiao[x][y]=idx
        lst1=[0,0,-1,1]
        lst2=[-1,1,0,0]
        for i in range(4):
            bfs(x+lst1[i],y+lst2[i],idx+1)
    else:
        return
for j in range(1,n+1):
    for k in range(1,m+1):
        bfs(j,k,1)
ans=0
for j in range(1,n+1):
    for k in range(1,m+1):
        if xiabiao[j][k]==1:
            ans+=1
print(ans)
2024/3/21 19:39
加载中...