社区讨论

一堆 MLE 求调

P1135奇怪的电梯参与者 2已保存回复 12

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
11 条
当前快照
1 份
快照标识符
@mlkn12th
此快照首次捕获于
2026/02/13 16:40
6 天前
此快照最后确认于
2026/02/16 17:30
3 天前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;

int n,a,b,ans=0x3f3f3f3f,k[256];
bool vis[256]={false};

void dfs(int x,int lev){
    if (lev<1||lev>n) return;
    
    if (lev==b){
        ans=min(ans,x);
        return;
    }
    
    if (k[lev]==0) return;

    if (vis[lev]) return;

    vis[lev]=true;

    dfs(x+1,lev-k[lev]);
    vis[lev-k[lev]]=false;

    dfs(x+1,lev+k[lev]);
    vis[lev+k[lev]]=false;

    return;
}

int main(){
    scanf("%d %d %d",&n,&a,&b);
    for (int i=1;i<=n;i++) scanf("%d",&k[i]);

    dfs(0,a);

    if (ans!=0x3f3f3f3f) printf("%d",ans);
    else printf("-1");

    return 0;
}


评测记录
代码已经放这了,为什么会 MLE\mathrm{MLE} ,求解答。
还有,能不能帮忙调一下啊 qwq\mathrm{qwq}

回复

12 条回复,欢迎继续交流。

正在加载回复...