- 是 1101. 献给阿尔吉侬的花束的变形,从二维变成三维,思路相同,创建一个dist数组用来存放每个点的状态以及遍历到的时间,当遍历到end点时,即为最短时间/路径。
- 本题的难点是三位数组的读取。
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=110;
struct Point
{
int x,y,z;
};
int L,R,C;
char g[N][N][N];
Point q[N * N * N];
int dist[N][N][N];
int dx[6]={
1,-1,0,0,0,0};
int dy[6]={
0,0,1,-1,0,0};
int dz[6]={
0,0,0,0,1,-1};
int bfs(Point start, Point end)
{
int hh=0, tt=0; //起点 终点
q[0]=start;
//q.push(start);逻辑是一样的 但是本题中没有使用queue 所以不能使用queue中的函数
memset(dist,