题目:
思路分析:
代码:
import math def f(coins, n): le = len(coins) FF = [0 for _ in range(n+1)] for i in coins: if i <= n: FF[i] = 1 for i in range(1, n+1): ll = [i for _ in range(le)] result = [math.inf if (x - y) < 0 else (x - y) for x, y in zip(ll, coins)] values = [] for j in result: if 0 <= j < len(FF): values.append(FF[j]) else: values.append(math.inf) m = min(values) + 1 FF[i] = m return FF, FF[-1] l = list(map(int, input().split())) n = int(input()) FF, re = f(l, n) print(re) print(FF) # inf为无可行解
#思路及图片来源于数学建模清风,如有侵权请告知