求救C++编译器不能成功运行,使用了<queue>库
  • 板块学术版
  • 楼主QDHSLGYYJK
  • 当前回复6
  • 已保存回复6
  • 发布时间2020/9/30 13:27
  • 上次更新2023/11/5 12:23:33
查看原帖
求救C++编译器不能成功运行,使用了<queue>库
376467
QDHSLGYYJK楼主2020/9/30 13:27

一运行就跳出来个_M_map+3.的页面 然后数十行的错误信息。

(不要在意代码对不对)

#include<cstdio>
#include<queue>
using namespace std;
queue<int> q;
int n,a,b,d[207],x[207],k;
int main(){
	for (int i=1;i<=n;++i)
		x[i]=-1;
	scanf("%d%d%d",&n,&a,&b);
	for (int i=1;i<=n;++i)
		scanf("%d",&d[i]);
	x[a]=0;
	q.push(a);
	while (q.empty()){
		k=q.front();
		q.pop();
		if (k==b){
			printf("%d",x[k]);
			return 0;
		}
		if (k+d[k]<=n&&x[k+d[k]]==-1){
			x[k+d[k]]=x[k]+1;
			q.push(k+d[k]);
		}
		if (k+d[k]&&x[k-d[k]]==-1){
			x[k-d[k]]=x[k]+1;
			q.push(k-d[k]);
		}}
	printf("-1");
	return 0;
}
2020/9/30 13:27
加载中...