1 条题解
-
1chenqianrong LV 9 @ 2021-08-21 19:27:10
#include<bits/stdc++.h> using namespace std; int n,s,t,a[201],cmp[201],val[201]; int main(){ cin>>n>>s>>t; int i; for(i=1; i<=n; i++){ cin>>a[i]; cmp[i]=0; val[i]=-1; } if(s==t){ cout<<0; return 0; } int l,r,v,qu[1001]; l=r=1; qu[1]=s; val[s]=0; cmp[s]=1; while(l<=r && r<=1000){ v=qu[l++]; if(v+a[v]<=n){ if(cmp[v+a[v]]==0){ qu[++r]=v+a[v]; val[v+a[v]]=val[v]+1; cmp[v+a[v]]=1; } } if(v-a[v]>=1){ if(cmp[v-a[v]]==0){ qu[++r]=v-a[v]; val[v-a[v]]=val[v]+1; cmp[v-a[v]]=1; } } } cout<<val[t]; return 0; }
- 1
信息
- 难度
- 9
- 分类
- (无)
- 标签
- 递交数
- 9
- 已通过
- 3
- 通过率
- 33%
- 被复制
- 1
- 上传者