B题,佬们帮忙看下哪里出问题了

void solve(){
    int n,m,u;
    cin>>n>>m>>u;
    vector<int> a(n+10),pre(n+10),b(n+10),pre1(n+10);
    for(int i=1;i<=n;i++){
        cin>>a[i];
        pre[i]=pre[i-1]+a[i];
    }
    for(int i=1;i<=n;i++){
        cin>>b[i];
        pre1[i]=pre1[i-1]+b[i];
    }

    int mx=0;
    for(int i=1;i<=n;i++){
        for(int j=i;j<=n;j++)
        {
            if(pre[j]-pre[i-1]<=m&&pre1[j]-pre1[i-1]<=u){
                mx=max(mx,j-i+1);
            }
        }
    }
    cout<<mx;
}

通过率80,de不出bug了,求求

全部评论
第一个问题是变量和数组要加 long long 第二个问题是双重for循环之内if不满足要及时break
点赞
送花
回复
分享
发布于 2023-11-25 21:02 陕西

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务