原题和广搜代码在这里
时间同样0ms。
3 6
+-+-+.+-+-+
|...|.....|
+-+.+-+-+-+
..|.......|
S-+-+-+.E-+
#endif
#include <iostream>
#include <cstring>
#include <queue>
#define SIZE 101
#define NUM 10001
using namespace std;
struct node
{
int x, y;
};
char a[SIZE][SIZE];
int dir[SIZE][SIZE], res[NUM];
queue<node> q;
int dx[4] = {-1, 1, 0, 0};
int dy[4] = {0, 0, 1, -1};
char resc[NUM];
char chs[4] = {'N', 'S', 'E', 'W'};
bool visited[SIZE][SIZE];
int best[SIZE][SIZE];
bool check(int x, int y, int dir)
{
switch (a[x][y])
{
case '+':
return true;
case '-':
return (dir > 1);
case '|':
return (dir < 2);
}
return false;
}
void dfs(int x, int y, int st, int d) // 深搜过程
{
int i, r, c;
if ((st >= best[x][y]) && (best[x][y])) // 步数超出了以前的最佳,不费时间了
{
return;
}
best[x][y] = st;
dir[x][y] = d;
for (i = 0; i < 4; i++

本文介绍了使用深度优先搜索(DFS)策略来解决城市交通优化问题。通过深度搜索算法,可以有效地探寻复杂的城市交通网络,找到最佳路径或解决方案。文章提供了一段具体的广度优先搜索代码作为参考,运行效率高达0ms。
最低0.47元/天 解锁文章
1368

被折叠的 条评论
为什么被折叠?



