当前位置:网站首页>Brainstorm: Complete Backpack
Brainstorm: Complete Backpack
2022-08-04 23:43:00 【InfoQ】
Title
Solution ideas
// Traverse the items first, thenTraverse backpack
for(int i = 0; i < weight.size(); i++) { // Traverse items
for(int j = weight[i]; j <= bagWeight ; j++) {// Traverse the knapsack capacity
dp[j] = max(dp[j], dp[j - weight[i]] + value[i]);
}
}
Code Implementation
private static void testCompletePack(){
int[] weight = {1, 3, 4};
int[] value = {15, 20, 30};
int bagWeight = 4;
int[] dp = new int[bagWeight + 1];
for (int i = 0; i< weight.length; i++){ // Traverse items
for (int j = weight[i]; j <= bagWeight; j++){ // Traverse bag capacity
dp[j] = Math.max(dp[j], dp[j - weight[i]] + value[i]);
}
}
for (int maxValue : dp){
System.out.println(maxValue + " ");
}
}
边栏推荐
猜你喜欢

一、爬虫基本概念

学会反射后,我被录取了(干货)
![情侣牵手[贪心 & 抽象]](/img/7d/1cafc000dc58f1c5e2e92150be7953.png)
情侣牵手[贪心 & 抽象]

Xiaohei's leetcode journey: 95. Longest substring with at least K repeating characters

MySQL的安装与卸载

App测试和Web测试的区别

直接插入排序

I was rejected by the leader for a salary increase, and my anger rose by 9.5K after switching jobs. This is my mental journey

资深游戏建模师告知新手,游戏场景建模师必备软件有哪些?

应用联合、体系化推进。集团型化工企业数字化转型路径
随机推荐
MYS-6ULX-IOT 开发板测评——使用 Yocto 添加软件包
Bidding Announcement | Operation and Maintenance Project of Haina Baichuang Official Account
App测试和Web测试的区别
直接插入排序
The role of @ Import annotations as well as how to use
~ hand AHB - APB Bridge 】 【 AMBA AHB bus
kernel hung_task死锁检测机制原理实现
Cython
上课笔记(6)(2)——#742. 周末舞会
KT148A电子语音芯片ic方案适用的场景以及常见产品类型
仪表板展示 | DataEase看中国:数据呈现中国资本市场
学会反射后,我被录取了(干货)
d枚举生成位
【SSR服务端渲染+CSR客户端渲染+post请求+get请求+总结】
怎么将自己新文章自动推送给自己的粉丝(巨简单,学不会来打我)
Basic web in PLSQL
[Cultivation of internal skills of memory operation functions] memcpy + memmove + memcmp + memset (4)
typeScript-promise
【无标题】线程三连鞭之“线程池”
生产者消费者问题