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]);
相关推荐
Ivanqhz9 小时前
php8 use-def链
算法·php
evans在进步9 小时前
LeetCode 189 轮转数组:三次反转原地解决,图解 Java 实现
java·算法·leetcode
歌_顿9 小时前
Drawing_To_Model
算法
龍德明宇9 小时前
AI不会疼-龍德明宇
人工智能·算法·大语言模型llm·负主体性·ai存在论
302wanger10 小时前
程序员写 SOP:把脑子里的流程固化下来
算法
科学实验家10 小时前
完全背包
算法
Smoothcloud润云10 小时前
GPU租赁数据安全怎么做?
人工智能·算法·ai·aigc·gpu算力·gpu
呜喵王阿尔萨斯10 小时前
extern “C“ in C++
c语言·c++·算法
乐观勇敢坚强的老彭11 小时前
C++信奥静态数组和动态数组
数据结构·c++·算法
月光船幽幽11 小时前
呼吸孔设计重塑系统稳定性
python·科技·算法