现在一共有 N N N 件物品,第i(i从1开始)件物品的重量为 v [ i ] v[i] v[i] ,价值为 w [ i ] w[i] w[i] 。每个物品至多挑选一次,且在挑选出来的物品的总重量不超过 V V V 的情况下,能装入背包的物品的总价值和最大为多少
二、分析 2.1 暴力思考对于每一个物品我们无非就两种选择, 选 和 不选 那么对于N件物品的抉择方案数就是 2 N 2^N 2N 种,当 N < 27 N < 27 N V || vis[loc]) return; if(loc == n + 1){ ans = max(ans,res_w); return; } vis[loc] = 1; dfs(loc+1,sum_v + v[loc],res_w + w[loc]);//选取第loc个位置的数 vis[loc] = 0; dfs(loc+1,sum_v,res_w);//不选去第loc个位置的数 } int main() { scanf("%d%d",&n,&V); memset(vis,false,sizeof vis); ans = 0; for(int i = 1;i
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?