蒟蒻100分求助!!!
查看原帖
蒟蒻100分求助!!!
557069
ouiostream楼主2023/9/27 16:50
#include<cstdio>
#include<iostream>
using namespace std;
long long n,a,b,x[100100],s=1000000,y[100100];
void p(int k,int t)
{
	if(k<1||t>s||k>n)
	{
		return;
	}
	if(k==b)
	{
		s=s>t?t:s;
		return;
	}
	y[k]=1;
	if(y[k+x[k]]<1)
	{
		p(k+x[k],t+1);
	}
	if(y[k-x[k]]<1)
	{
		p(k-x[k],t+1);
	}
	y[k]=0;
}
int main()
{
	scanf("%d %d %d",&n,&a,&b);
	for(int i=1;i<=n;i++)
	{
		scanf("%lld",&x[i]);
	}
	p(a,0);
	if(s==1000000)
	{
		s=-1;
	}
	printf("%d",s);
	return 0;
}
2023/9/27 16:50
加载中...