一运行就跳出来个_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;
}