全MLE(dfs做法),求调必关
查看原帖
全MLE(dfs做法),求调必关
1748379
Songshuai楼主2025/7/24 11:20
#include <bits/stdc++.h>
using namespace std;
int n,b,a[250],cnt,ans2[250],a1,ans=1000000;
void dfs(int now,int ci){
	ans2[now]=ci;
	if(now+a[now]<=n){
		dfs(now+a[now],ci+1);
	}
	if(now-a[now]>0){
		dfs(now-a[now],ci+1);
	}
}
int main(){
	cin>>n>>a1>>b;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	if(a1==b){
		cout<<0;
		return 0;
	}
	dfs(a1,0);
	for(int i=1;i<=n;i++){
		cout<<ans2[i]<<" ";
	}
	if(ans2!=0){
		cout<<ans2[b];
	} 
	else cout<<"-1";
	return 0;
}
2025/7/24 11:20
加载中...