64分求调!!
查看原帖
64分求调!!
1234598
shu10920楼主2024/8/27 18:05
#include<bits/stdc++.h>
using namespace std;

vector<int> D(204,-1),A(204);
int n;
void dfs(int a,int b,int cnt){
	if(D[a] != -1) return ;//之前到过了
	D[a] = cnt;//步数
	if(a == b or A[a] == 0) return;//到达或者这个楼层根本走不了
	if(a+A[a] <= n) dfs(a+A[a],b,cnt+1);//向上走
	if(a-A[a] > 0) dfs(a-A[a],b,cnt+1);//向下走
}
int main(){
	ios::sync_with_stdio(false),cin.tie(0);
	int a,b;cin>>n>>a>>b;
	for(int i = 1;i <= n;i++) cin>>A[i];
	dfs(a,b,0);
	cout<<D[b];
	return 0;
}

球球各位大佬帮帮,谢谢!!!!

2024/8/27 18:05
加载中...