[dfs深搜] 2. 瓷砖(dfs、递归、常规解法)
发布日期:2021-05-12 23:18:38 浏览次数:12 分类:精选文章

本文共 2923 字,大约阅读时间需要 9 分钟。

1. ������������

������������������������������������������������������������������������������������������������������������������������������������������������������������

2. ������������

���������������

  • ������������ dfs.c_������������������������������DFS������������
  • ������������map���������@���������������.,.���������������������������������������������
  • ������������������������ans������������������������������������������������������

���������������

  • ������������������������������������h������������������������w���
  • ������������h������������������������������������������������

���������������

  • ���������������������ans���

3. ������������

������������DFS + ������ + ������������

DFS������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������DFS���������

1. ������������������

������������������DFS������map[1][1]������������������������������������������������������������������������������������������������������������

2. ������������������

������������������������������dir������������������������������������������������������������������������������������������������������������������������������������������������������������

3. ������������������������������

���������������������������������������������������������������������������������������������������map[x][y]���������#���������������������������������

������������

#include 
using namespace std; int h, w, sx, sy, ans = 1; char map[55][55]; int dir[4][2] = { {0, 1}, {1, 0}, {0, -1}, {-1, 0} }; void dfs(int x0, int y0) { for (int i = 0; i < 4; ++i) { int x = x0 + dir[i][0]; int y = y0 + dir[i][1]; if (map[x][y] == '.') { ++ans; map[x][y] = '#'; dfs(x, y); } } } int main() { cin >> h >> w; for (int i = 1; i <= w; ++i) { for (int j = 1; j <= h; ++j) { cin >> map[i][j]; if (map[i][j] == '@') { sx = i; sy = j; } } } dfs(sx, sy); cout << ans << endl; return 0; }
4. ������������
  • ���������������������������������������������������h���w���������������������������������������������������������������������������map[1][1]���������������������������������������������������������������������
  • DFS������������������������������������������������������������������������������������������������DFS������������������������������������������������������
  • ���������������������������### ������������������������������������������������������������������
5. ������������

������������������������������ans������������������������������������������������������������

���������������������������������������������������������������������������������������������������������������������������������������

上一篇:[dfs深搜] 1. 体积(dfs、递归、巧妙解法)
下一篇:[sort排序] 9. 抢气球(自定义排序、常规解法)

发表评论

最新留言

表示我来过!
[***.240.166.169]2025年04月10日 06时06分31秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章