BFS MLE求助

B3624 猫粮规划

Wyf32627 @ 2024-08-15 18:14:23

#include <bits/stdc++.h>
using namespace std;
struct node
{
    int x,index;
};  
int a[50];
int sum,n,l,r;
void bfs()
{
    queue<node>q;
    node h,t;
    h.x=a[1],h.index=1;
    q.push(h);
    h.x=0,h.index=1;
    q.push(h);
    while(!q.empty())
    {
        h=q.front(),q.pop();
        if(h.x>r) continue;
        if(h.index>n&&l<=h.x&&h.x<=r) {sum++;continue;}
        t.x=h.x,t.index=h.index+2;
        q.push(t);
        t.x=h.x+a[h.index+1],t.index=h.index+1;
        q.push(t);
    }
}
int main()
{
    std::ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    cin>>n>>l>>r;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    bfs();
    cout<<sum;
    return 0;
}

样例输出不出来。


by Lazy_make_name @ 2024-08-25 22:54:18

不清楚你的思路,加点注释和讲解,我已经过了,但找不到你的问题。


|