求大佬求助,我感觉思路貌似没错
查看原帖
求大佬求助,我感觉思路貌似没错
369399
yizhiming楼主2020/8/10 08:41
#include <cstdio>
#include <iostream>
using namespace std;
int k[210];
int main(){
	int n,a,b,num=0;
	cin>>n>>a>>b;
	for(int i=1;i<=n;i++){
		cin>>k[i];	
	}
	for (int i=1;i<=n;i++){
		if (a==b)break;
		if(a+k[a]>n&&a-k[a]>0){
			a = a-k[a];
			num+=1;
		}else if (a-k[a]<1&&a+k[a]<n){
			a = a+k[a];
			num+=1;
		}else if(a-k[a]>0&&a+k[a]<n){
			a = a+k[a];
			num+=1;
		}
	}
	if (num==0){
		cout<<-1;
	}else cout<<num;
	return 0;
	}

2020/8/10 08:41
加载中...