6 条题解

  • 0
    @ 2025-2-23 10:05:56
    #include<iostream>
    using namespace std;
    
    int dp[1100],v[1100],w[1100];
    
    int main(){
        int W,m;
        cin>>W>>m;
        for(int i = 1; i <= m; i++){
            cin>>w[i]>>v[i];
        }
        for(int i = 1; i <= m; i++){
            for(int j = W; j >= w[i]; j--){
                dp[j] = max(dp[j],dp[j-w[i]]+v[i]);
            }
        }
        cout<<dp[W];
        return 0;
    }
    

    01背包模板

    信息

    ID
    678
    时间
    1000ms
    内存
    256MiB
    难度
    4
    标签
    递交数
    264
    已通过
    114
    上传者