01背包问题

Posted sxy2004

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了01背包问题相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include<algorithm>
using namespace std;
int m,n,w[31],c[31],f[31][201],p;
int main(){
    cin>>m>>n;
    for(int i=1;i<=n;i++) cin>>w[i]>>c[i];
    for(int i=1;i<=n;i++){
        for(int v=m;v>0;v--){
            if(w[i]<=v) f[i][v]=max(f[i-1][v],f[i-1][v-w[i]]+c[i]);
            else f[i][v]=f[i-1][v];
        }
    }
    cout<<f[n][m];
    return 0;
}

一道经典的01背包qwq,

莫得题目(其实就相当于是板子!),

可能是我太菜了233...

以上是关于01背包问题的主要内容,如果未能解决你的问题,请参考以下文章

01背包问题模板代码

代码随想录算法训练营第四十二天 | 01背包问题,你该了解这些01背包问题,你该了解这些 滚动数组 416. 分割等和子集

0-1背包问题的回溯法中,剪枝用的上界函数问题

把01背包问题的底裤扒个底朝天!!!

用回溯法求01背包问题,怎样使用C++模板啊,迫切求指点!

c语言背包问题,求高手解答