水池问题
2016-09-25 16:45
120 查看
//水池问题:
// 有一个大小为N*M的园子,雨后积起了水。八连通的积水被认为是连在一起的,求园子里总共有多少水洼?
//输入N,M。
int n,m;
char field[maxn][maxm+1];//园子
//现在的位子为x,y。
void dfs(int x,int y){
field[x][y]='.';
for(int dx=-1;dx<=1;dx++)
for(int dy=-1;dy<=1;dy++){
int nx=x+dx,ny=y+dy;
if(0<=nx&&nx<n&&0<=ny&&ny<m&&field[nx][ny]=='w') dfs(nx,ny);
}
return 0;
}
void solve(){
int res=0;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++){
if(field[i][j]=='w')
dfs(i,j);
res++;
}
printf("%d\n",res);
}
// 有一个大小为N*M的园子,雨后积起了水。八连通的积水被认为是连在一起的,求园子里总共有多少水洼?
//输入N,M。
int n,m;
char field[maxn][maxm+1];//园子
//现在的位子为x,y。
void dfs(int x,int y){
field[x][y]='.';
for(int dx=-1;dx<=1;dx++)
for(int dy=-1;dy<=1;dy++){
int nx=x+dx,ny=y+dy;
if(0<=nx&&nx<n&&0<=ny&&ny<m&&field[nx][ny]=='w') dfs(nx,ny);
}
return 0;
}
void solve(){
int res=0;
for(int i=0;i<n;i++)
for(int j=0;j<m;j++){
if(field[i][j]=='w')
dfs(i,j);
res++;
}
printf("%d\n",res);
}
相关文章推荐
- 蓄水池抽样(Reservoir Sampling)问题
- 水池问题
- nyoj78圈水池(凸包问题)
- 凸包问题——圈水池
- 凸包问题——圈水池
- 凸包问题——圈水池
- 蓄水池问题
- 凸包问题——圈水池
- 凸包问题——圈水池
- NYOJ 圈水池(凸包问题)
- 水池问题的lua语言算法(面试题分析:我的Twitter技术面试失败了)
- 水池蓄水问题(Trapping Rain Water)
- 简单水池&&迷宫问题
- nyoj 27水池问题
- 凸包问题(圈水池)
- nyoj 78 圈水池 凸包问题 篱笆问题
- 水池问题的lua语言算法(面试题分析:我的Twitter技术面试失败了)
- 蓄水池问题
- 凸包问题——圈水池
- 凸包问题——圈水池