分享一种思路:转换成背包问题。先求所有砝码加一起能称出的最大质量totalW,然后每个砝码的价值就是其质量。遍历出背包容量为j时,包内最多能装下多少质量。最后判断有多少个dp[j]==j。 while 1: try: n = int(input()) tmp1 = input().split(' ') # 重量 tmp2 = input().split(' ') # 对应的个数 arr = [] for i in range(n): # 逐个砝码 for j in range(...