01背包

【问题】

一个容量为m公斤的背包。现有n种物品,每种物品只有一件,它们的重

量分别为Wi(1≤i≤n),它们的价值分别为Ci(1≤i≤n)。求能放入背包的最

大价值。

【输入】

第一行:两个整数,n(物品数量,n<51)和m(背包容量,m<201)。

第2 ... n+1行:每行两个整数Wi,Ci,表示每个物品的重量和价值。

【输出】

一个数,表示最大价值。

【样例输入】

3 6

3 5

2 3

4 6

【样例输出】

9

复制代码
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++){
            if(w[i]>j)
                f[i][j]=f[i-1][j];
            else
                f[i][j]=max(f[i-1][j],f[i-1][j-w[i]]+c[i]);
        }
    printf("%d",f[n][m]);
相关推荐
旖-旎29 分钟前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
企客宝CRM1 小时前
2026年中小企业CRM选型指南:企客宝CRM处于什么位置?
android·算法·企业微信·rxjava·crm
橙淮1 小时前
二叉树核心概念与Java实现详解
数据结构·算法
米罗篮2 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程
橙淮2 小时前
双指针法:高效算法解题的利器
算法
初心未改HD2 小时前
深度学习之MLP与反向传播算法详解
人工智能·深度学习·算法
刀法如飞2 小时前
【Go 字符串查找的 20 种实现方式,用不同思路解决问题】
人工智能·算法·go
技术小黑4 小时前
CNN算法实战系列03 | DenseNet121算法实战与解析
pytorch·深度学习·算法·cnn
困意少年4 小时前
队列:先进先出为什么特别适合“流程推进”这类问题
数据结构