第一个点TLE
查看原帖
第一个点TLE
682044
czk111楼主2023/7/6 21:40
#include <bits/stdc++.h>
using namespace std;
int n,d,b,ans=-1;
int a[500],vis[500];
void dfs(int x,int c){
	if(x<=0||c>ans&&ans!=-1||vis[x])return;
	if(x==b){
		ans=c;
		return;
	}
	vis[x]=1;
	dfs(x-a[x],c+1);
	dfs(x+a[x],c+1);
	vis[x]=0;
}
int main(){
	cin>>n>>d>>b;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	dfs(d,0);
	cout<<ans;
}

再附上一句:这题不仅电梯奇怪,分数也奇怪

2023/7/6 21:40
加载中...