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

机加工外贸网站小程序定义

机加工外贸网站,小程序定义,旅游网站建设费用,国内网站建设哪家好【代码随想录训练营】【Day 44】【动态规划-4】| 卡码 46, Leetcode 416 需强化知识点 背包理论知识 题目 卡码 46. 携带研究材料 01 背包理论基础01 背包理论基础(滚动数组)01 背包 二维版本:dp[i][j] 表示从下标为[0-i]的物…

【代码随想录训练营】【Day 44】【动态规划-4】| 卡码 46, Leetcode 416

需强化知识点

  • 背包理论知识

题目

卡码 46. 携带研究材料

  • 01 背包理论基础
  • 01 背包理论基础(滚动数组)
  • 01 背包 二维版本:dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少,注意 遍历和初始化时 n 要取到
  • 01 背包 一维版本:dp[j]为 容量为j的背包所背的最大价值,注意 先遍历 物品,再重量(倒序遍历)

def func(m, n, weight, value):# dp[i][j] 表示从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。# 注意 n 要取到dp = [ [0] * (n+1) for _ in range(m) ]for i in range(n):if i >= weight[0]:dp[0][i] = value[0]for i in range(1, m):for j in range(1, n+1):if j >= weight[i]:dp[i][j] = max(dp[i-1][j], dp[i][j-weight[i]] + value[i])else:dp[i][j] = dp[i-1][j]return dp[m-1][n]def func_v2(m, n, weight, value):# 容量为i的背包,最大价值dp = [0] * (n+1)# 先物品,再重量(倒序)for i in range(0, m):for j in range(n, weight[i]-1, -1):dp[j] = max(dp[j], dp[j-weight[i]] + value[i])return dp[n]        m, n = map(int,input().split())
weight = list(map(int,input().split()))
value = list(map(int,input().split()))print(func_v2(m, n, weight, value))

416. 分割等和子集

  • 动态规划:01背包问题,重量为 target,价值为数值
  • 使用 回溯+剪枝的方法会超时,注意对于返回 布尔值的处理
class Solution:def canPartition(self, nums: List[int]) -> bool:if sum(nums) % 2:return Falsetarget = sum(nums) // 2dp = [0] * (target+1)for i in range(len(nums)):for j in range(target, nums[i]-1, -1):dp[j] = max(dp[j], dp[j - nums[i]] + nums[i])if dp[j] == target:return Truereturn False# 回溯 + 剪枝 超时,注意bool 类型返回值的方式(目前只能想到这种)# def backtracking(path, result, startIndex, target, nums):#     if startIndex >= len(nums) or sum(path) > target:#         return#     if sum(path) == target:#         result[0] = True#         return#     for i in range(startIndex, len(nums)):#         if sum(path) + nums[i] > target:#             break#         path.append(nums[i])#         backtracking(path, result, i+1, target, nums)#         path.pop()# result = [False]# if sum(nums) % 2:#     return False# else:#     nums.sort()#     backtracking([], result, 0, sum(nums) // 2, nums)#     return result[0]
http://www.yayakq.cn/news/262390/

相关文章:

  • 效果好的网站建设公司wordpress 宕机原因
  • 体育 网站建设询价函格式做网站卖衣服物流包年多少钱
  • 东平县住房和城乡建设局网站制作动画片的软件
  • 做网站每一步的是什么网站防封链接怎么做
  • 霞浦建站公司020网站模板
  • 整人网站建设信息类网站制作
  • 网站模板教程线上购买链接
  • thinphp 做外贸网站asp怎么做网站
  • 装修设计合同标准范本关键词排名优化易下拉霸屏
  • 网站流量来源查询艺考培训学校
  • 郑州最好的网站建设vue做网站看不到htmI吗
  • 好的公司网站制作微网站开发流程
  • php做电影网站淘宝电商怎么做
  • 网站里面的链接怎么做的精美网站欣赏
  • 建设工程类招标信息发布网站推广最有效的办法
  • 如果提高网站做网站导流
  • 以企业介绍为主做外贸网站好吗企业采购平台有哪几个知名
  • 网站备案 非经营河南网站建设费用
  • 网页制作的网站wordpress注册简化
  • 面试网站建设工程师iis5.1怎么发布网站
  • 外贸导向企业网站长沙广告设计公司排名
  • 云霄县建设局网站网站技能培训
  • 网站服务空间网站备案相关前置许可
  • 申请免费个人网站鞋 东莞网站建设 技术支持
  • 计算机考试模拟网站怎么做梦幻西游网页版下载
  • 房产局网站建设方案做枪版电影网站赚钱
  • 网站标题关键词大连建设工程信息网专家库
  • 可以做点赞的网站赚钱带搜索网站建设视频教程
  • 如何修改网站关键词北京网站建设公司华网天下官网
  • 云服务器搭建个人网站深色调网站