题目描述
现有n种砝码,重量互不相等,分别为 m1,m2,m3…mn ;
每种砝码对应的数量为 x1,x2,x3...xn 。
现在要用这些砝码去称物体的重量(放在同一侧),问能称出多少种不同的重量。
注:
称重重量包括 0
数据范围:每组输入数据满足
1≤n≤10 ,
1≤mi≤2000 ,
1≤xi≤10
输入描述:
对于每组测试数据:
第一行:n --- 砝码的种数(范围[1,10])
第二行:m1 m2 m3 ... mn --- 每种砝码的重量(范围[1,2000])
第三行:x1 x2 x3 .... xn --- 每种砝码对应的数量(范围[1,10])
输出描述:
利用给定的砝码可以称出的不同的重量数
示例1
输入
2
1 2
2 1
输出
5
说明
可以表示出0,1,2,3,4五种重量。
解题思路
1.01背包问题
2.背包问题五部曲:
一:确定dp[i]的含义,背包容量为i时能装
这篇博客介绍了如何用Python解决华为在线评估(OD)中的一道01背包问题。题目要求使用不同重量的砝码组合称量物体的多种重量。博主详细阐述了解题思路,包括动态规划的五步法,并给出了具体代码实现。示例展示了一组测试数据,可以称出5种不同的重量。博客主要涉及动态规划和01背包算法。
订阅专栏 解锁全文
234

被折叠的 条评论
为什么被折叠?



