acwing 1113 红与黑

简介: acwing 1113 红与黑

1113. 红与黑 - AcWing题库

#include<iostream>
#include<cstring>
#include<algorithm>
 
using namespace std ;
const int N = 25 ;
int d[4][2] = {{1,0},{-1,0},{0,1},{0,-1}} ;
char g[N][N] ;
int n , m ;
int ans ;
int sx , sy ;
bool vis[N][N] ;
void dfs(int u , int v){
  for(int i = 0 ; i < 4 ; i ++){
    int x = u + d[i][0] , y = v + d[i][1] ;
    if(x < 0 || x >= n || y < 0 || y >= m || vis[x][y] ||g[x][y] == '#' ) continue ;
    vis[x][y] = 1 ;
    if(g[x][y] == '.') ans ++ ;
    dfs(x,y) ;
  }
}
int main(){
  while(cin >> m >> n , n ){
    for(int i = 0 ; i < n ; i ++) cin >> g[i] ;
    for(int i = 0 ; i < n ; i ++){
      for(int j = 0 ; j < m ; j ++){
        if(g[i][j] == '@') sx = i , sy = j ;
      }
    }
    ans = 1 ;
    memset(vis,0,sizeof(vis)) ;
    dfs(sx,sy) ;
    cout << ans << endl ;
  }   
}
目录
相关文章
|
7月前
acwing 恨7不成妻
acwing 恨7不成妻
51 0
|
2月前
acwing 1106 山峰和山谷
acwing 1106 山峰和山谷
11 0
|
2月前
acwing 1098 城堡
acwing 1098 城堡
13 0
|
2月前
|
人工智能
AcWing 274. 移动服务(线性dp)
AcWing 274. 移动服务(线性dp)
15 0
|
2月前
acwing 275 传纸条 (线性dp)
acwing 275 传纸条 (线性dp)
16 0
|
2月前
acwing 2060 奶牛选美
acwing 2060 奶牛选美
33 0
AcWing 2060. 奶牛选美(每日一题)
AcWing 2060. 奶牛选美(每日一题)
《蓝桥杯每日一题》递推·AcWing 3777. 砖块
《蓝桥杯每日一题》递推·AcWing 3777. 砖块
80 0
|
机器学习/深度学习
《蓝桥杯每日一题》背包dp·AcWing3382. 整数拆分
《蓝桥杯每日一题》背包dp·AcWing3382. 整数拆分
74 0
|
机器学习/深度学习 人工智能 移动开发