全WA求助!谢谢
查看原帖
全WA求助!谢谢
953660
zsjaaaxy楼主2023/12/31 07:22

RT,就很莫名其妙,不知道错哪了

#include<bits/stdc++.h>
using namespace std;
struct node
{
    int l,ans;
};
int main()
{
    queue<node> q;
    q.push({1,0});
    int n,vis[100000005];
    cin>>n;
    while(!q.empty())
    {
        node t=q.front();
        q.pop();
        vis[t.l]=1;
        if(t.l==n)
        {
            cout<<t.ans;
            return 0;
        }
        int d1=t.l-1,d2=t.l+1,d3=t.l*2;
        if(d1>1&&d1<n&&vis[d1]==0)
        {
            q.push({d1,t.ans+1});
        }
        if(d2>1&&d2<n&&vis[d2]==0)
        {
            q.push({d2,t.ans+1});
        }
        if(d3>1&&d3<n&&vis[d3]==0)
        {
            q.push({d3,t.ans+1});
        }
    }
    return 0;
}
2023/12/31 07:22
加载中...