dfs连通性模型
1. 算法分析
使用dfs来判断是否两个点连通,也可以通过dfs来做计数
2. 例题
acwing1112迷宫
题意:
T个测试样例,每个测试样例输入一个N,表示网格大小。网格为N*N的二维网格,给定起点和终点,问起点能否到达终点
代码:
#include <bits/stdc++.h>
using namespace std;
int const N = 1e2 + 10;
int T, n, sx, sy, ex, ey, st[N][N];
char a[N][N];
int dx[] = {
-1, 0, 1, 0}, dy[] = {
0, 1, 0 , -1};
// dfs判断能否到达
bool dfs(int x, int y) {
for (int i = 0; i < 4; ++i) {
// 4个方向
int next_x = x + dx[i], next_y = y + dy[i];
if (