- 能养几只公羊
AC
- @ 2026-6-3 20:21:47
files:/foo(1)
2 条评论
-
-
#include<bits/stdc++.h>// using namespace std; struct node{ int x,y; }; queue q; int mp[1001][1001]; int vis[1001][1001]; int dx[4]={1,0,-1,0}; int dy[4]={0,1,0,-1}; int n,m,sx,sy,ans; void bfs(){ node a={sx,sy}; q.push(a); vis[sx][sy]=1; while(!q.empty()){ node f=q.front(); for(int i=0;i<4;i++){ int tx=f.x+dx[i]; int ty=f.y+dy[i]; if(tx>=1&&tx<=n&&ty>=1&&ty<=m&&mp[tx][ty]==0&&vis[tx][ty]==0){ node r={tx,ty}; q.push(r); vis[tx][ty]=1; } } q.pop(); } } int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>mp[i][j]; } } for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ if(mp[i][j]==0&&vis[i][j]==0){ sx=i; sy=j; bfs(); ans++; } } } cout<<ans; return 0; } 乌鸦坐飞机!
- 1
信息
- ID
- 2563
- 时间
- ms
- 内存
- MiB
- 难度
- 2
- 标签
- 递交数
- 71
- 已通过
- 21
- 上传者