当前位置: 首页 > news >正文

乐昌市建设网站镇江交叉口优化

乐昌市建设网站,镇江交叉口优化,自己写代码做网站,网站怎样做优化网页题目 有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 代码 dp[i][j]: 表示从0~i个物品中选物品放到容量为j的背包中所能获得的最大价值 …

题目 

有n件物品和一个最多能背重量为w 的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品只能用一次,求解将哪些物品装入背包里物品价值总和最大。 

代码

dp[i][j]: 表示从0~i个物品中选物品放到容量为j的背包中所能获得的最大价值

初始化: 第一列为0,第一行如果有容量>第一个物品重量的则赋值为第一个物品的价值

状态转移方程:dp[i][j]只能由上一个状态的背包“放”与“不放”物品i转移得出,选择“放”或“不放”第i个物品所能获得的最大值作为dp[i][j]的值,即dp[i][j] = max(dp[i-1][j],dp[i-1][j-weight[i]]+value[i])

def solve(weight,value,bag_weight):# dp[i][j]表示从0~i个物品中选物品放到容量为j的背包中所能获得的最大价值dp = [[0]*(bag_weight+1) for _ in range(len(weight))]# 初始化第一列为0,第一行如果有容量>第一个物品重量的则赋值为第一个物品的价值for j in range(1,bag_weight+1):if j>=weight[0]:dp[0][j] = value[0]# dp[i][j]只能由上一个状态“放”与“不放”物品i转移得出for i in range(1,len(weight)):for j in range(1,bag_weight+1):dp[i][j] = max(dp[i-1][j],dp[i-1][j-weight[i]]+value[i])return dp[len(weight)-1][bag_weight]if __name__ == "__main__":weight = [1, 3, 4]value = [15, 20, 30]bagweight = 4result = solve(weight, value, bagweight)print(result)
http://www.yayakq.cn/news/251894/

相关文章:

  • 游戏网站建设赚钱平台推广销售话术
  • 设计师常用素材网站应用软件开发公司
  • 下载免费网站模板下载安装江阴做网站的地方
  • 贵州省安顺市网站建设行业网站建设多少钱
  • 技术支持 桂林网站建设网站域名设计方案
  • 网站系统cms如何建立网站快捷方式到桌面
  • 富阳市网站上海公司招聘
  • 网站建设合作北京做电子系统网站的公司
  • 静态网站有哪些优点建设银行甘肃省分行网站
  • 用自己网站做邮箱域名域名有wordpress
  • 江苏省建设工程质量监督网站建设一个购物网站需要多少钱
  • 网站建设负责人证明柳州做网站的公司有哪些
  • dz怎么做视频网站柳州正规网站制作公司哪家好
  • 域名解析后怎么做网站三合一网站搭建价格
  • 查询网站空间商做食品的采购员常用网站
  • 网站建站要交税吗百度一下知道官网
  • 宁波网站搭建公司北京手机建站模板
  • 引物在线设计网站网站的维护和更新
  • 浙江建设职业技术学院迎新网站排名优化是怎么做的
  • 国外展览展示设计网站如何制作网站app
  • 外贸网站seo招聘免费 建站
  • 网站建设与优化推广的话术顺德网站建设渠道
  • 阿里云建站的优缺点长沙快速网页制作
  • 移动网站设计教程建设工程造价网站
  • 潍坊在线制作网站东莞新增确诊名单
  • 装修平台网站建设辽宁省城乡和建设厅网站
  • 温岭市住房和城乡建设规划局网站重庆最大的本地交流网站
  • 手机号码网站开发access2003做网站
  • 雷神代刷网站推广WordPress文章朗读功能
  • 如何在网站插做视频郑州app制作公司