这个代码提交上去为什么会MLE
又人能帮我分析一下时间复杂度吗
#include<bits/stdc++.h>
using namespace std;
int n,a,b,k[205],mini=1e9,sum;
void dfs(int cur)
{
if(cur==b)
{
mini=min(mini,sum);
return ;
}
if(cur+1*k[cur]>=1&&cur+1*k[cur]<=n)
{
sum++;
dfs(cur+1*k[cur]);
}
if(cur+(-1*k[cur])>=1&&cur+(-1*k[cur])<=n)
{
sum++;
dfs(cur+-1*k[cur]);
}
return ;
}
int main(){
cin>>n>>a>>b;
for(int i=1;i<=n;i++)
cin>>k[i];
dfs(a);
cout<<mini;
return 0;
}