文章
14
粉丝
80
获赞
0
访问
9.9k
为什么第六行必须要用const定义?
//将结构体作为队列的元素
//广度优先搜索
#include<bits/stdc++.h>
using namespace std;
const int maxn=100+5;
char M[maxn][maxn];//迷宫,不能用map作为变量名称
int vis[maxn][maxn];//访问数组
int dir[4][2]={-1,0,1,0,0,-1,0,1};//四个方向的坐标变化
struct node{
int x;
int y;
int step;//小A抵达该位置所需要的最少移动步数/秒数
};
int BFS(int sx,int sy){//sx和sy分别为小A所在的行坐标和列坐标
memset(vis,0,sizeof(vis));
queue<node> q;
q.push(node{sx,sy,0});
vis[sx][sy]=1;
int ans=-1;
while(!q.empty()){
node temp=q.front();
q.pop();
if(M[temp.x][temp.y]=='E'){//先判断是否抵达出口
ans=temp.step;
return ans;
...
登录后发布评论
加const是把变量限定为常量,
const int maxn=100+5;
这样maxn的值就不能在其他地方修改了