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

免费网站怎么盈利模式做钢材的都用什么网站

免费网站怎么盈利模式,做钢材的都用什么网站,如何用家庭电脑做网站,网站开发 开源背包问题算法 0-1背包问题二维数组一维数组 完全背包问题二维数组一维数组 多重背包问题一维数组 0-1背包问题 问题:背包的容量为9,有重量分别为[2, 4, 6, 9]的四个物品,价值分别为[3, 4, 5, 6],求背包能装的物品的最大价值是多少…

背包问题算法

  • 0-1背包问题
    • 二维数组
    • 一维数组
  • 完全背包问题
    • 二维数组
    • 一维数组
  • 多重背包问题
    • 一维数组

0-1背包问题

问题:背包的容量为9,有重量分别为[2, 4, 6, 9]的四个物品,价值分别为[3, 4, 5, 6],求背包能装的物品的最大价值是多少,每种物品的数量最多为1

二维数组

w = [2, 4, 6, 9]  # 重量
v = [3, 4, 5, 6]  # 价值
c = 9  # 最大容量
n = len(w)  # 物品数量
w.insert(0, 0)
v.insert(0, 0)
dp = [[0] * (c + 1) for _ in range(n + 1)]
for i in range(1, n + 1):for j in range(1, c + 1): # 正向if j >= w[i]:dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - w[i]] + v[i])else:dp[i][j] = dp[i - 1][j]for rows in dp:print(rows)
print('最大value:', dp[n][c])

一维数组

w = [2, 4, 6, 9]  # 重量
v = [3, 4, 5, 6]  # 价值
c = 9  # 最大容量n = len(w)  # 物品数量
w.insert(0, 0)
v.insert(0, 0)
dp = [0] * (c + 1)
for i in range(1, n + 1):for j in range(c, 0, -1): # 逆向if j >= w[i]:dp[j] = max(dp[j], dp[j - w[i]] + v[i])print(dp)
print('最大value:', dp[c])

完全背包问题

问题:背包的容量为9,有重量分别为[2, 4, 6, 9]的四个物品,价值分别为[3, 4, 5, 6],求背包能装的物品的最大价值是多少,每种物品的数量最多不限

二维数组

w = [2, 4, 6, 9]  # 重量
v = [3, 4, 5, 6]  # 价值
c = 9  # 最大容量n = len(w)
w.insert(0, 0)
v.insert(0, 0)dp = [[0] * (c + 1) for _ in range(n + 1)]for i in range(1, n + 1):for j in range(1, c + 1): # 正向if j >= w[i]:dp[i][j] = max(dp[i - 1][j], dp[i][j - w[i]] + v[i])else:dp[i][j] = dp[i - 1][j]
for values in dp:print(values)
print('最大value:', dp[n][c])

一维数组

w = [2, 4, 6, 9]  # 重量
v = [3, 4, 5, 6]  # 价值
c = 9  # 最大容量n = len(w)w.insert(0, 0)
v.insert(0, 0)dp = [0] * (c + 1)for i in range(1, n + 1):for j in range(0, c + 1): # 正向if j >= w[i]:dp[j] = max(dp[j], dp[j - w[i]] + v[i])print(dp)
print('最大value:', dp[c])

多重背包问题

问题:背包的容量为10,有重量分别为[2, 4, 6, 9]的四个物品,价值分别为[3, 4, 5, 6],求背包能装的物品的最大价值是多少,每种物品的数量最多分别为[2, 1, 2, 1]

一维数组

w = [2, 4, 6, 9]  # 重量
v = [3, 4, 5, 6]
counts = [2, 1, 2, 1]  # 数量
c = 10  # 最大容量
n = len(w)w.insert(0, 0)
v.insert(0, 0)
counts.insert(0, 0)dp = [0] * (c + 1)for i in range(1, n + 1):for j in range(c, 0, -1): # 逆向for k in range(1, counts[i] + 1):if j >= k * w[i]:dp[j] = max(dp[j], dp[j - k * w[i]] + v[i])print(dp)
print('最大value:', dp[c])
http://www.yayakq.cn/news/241965/

相关文章:

  • 展示型网站功能游戏交易网站怎么做
  • 高端个性化网站开发嘉兴网站seo公司
  • 二级菜单网站如何做伪静态收款 wordpress
  • 网页兼容性站点网站建设与管理属于什么部门
  • wordpress淘宝客源码网站seo公司哪家专业
  • 导航网站建站系统wordpress get_tag
  • 影楼网站建设沈阳seo关键词
  • 集团官方网站建设百度对网站的收录
  • dw网站建设模板专做杰伦头像的网站
  • vi设计服务seo 能提高网站速度吗
  • 支付行业的网站怎么做c 能用来做网站
  • 公司建设电子商务网站的目的资深的食品行业网站开发
  • 五屏网站建设动态免费建站网站号
  • 成都做网站企业查询官网免费查询一下
  • 旅游 网站建设百度快速优化推广
  • 用jsp做留言板网站学生服务器租用
  • 一般的网站是由什么语言做的贵州省和城乡建设厅官方网站
  • 晓风彩票网站建设软件拓者设计吧官方网站
  • 想做网站怎么做找专业公司做网站
  • 厦门建设网站公司投资公司网站建设意义
  • 公司网站有时登不进 服务器wordpress 缩略图
  • 网站推广方法ppt网站目录结构
  • 网站建设职能绩效目标个人怎么做贷款网站
  • 西安公司的网站建设ip地址或域名查询
  • 网站制作公司站建设网站建设 项目背景
  • 哪里做公司网站PHP网站开发如何建立vip
  • 哪个cms做企业网站好网站如何做优化推广
  • 红色ppt模板免费下载网站深圳建设工程质量检测中心
  • 网站开发合同需要交印花税吗wordpress文章收录后显示
  • 内蒙古 网站建设培训制作网站源码