#购物清单
# 第一行输入总金额N,商品数量m
# 第二行至m+1行输入商品数据,v p q,商品价格v,商品重要度p,商品是主件0附件大于0(用数值代表是哪个主件的附件,比如1则代表第二行的主件的附件)
代码如下:
#-*- coding:utf-8 -*-
#找出有多少种方案组合
def choose_goods(N,m,goods):
#计算这次使用的金额:
dt = {}
location = {}
for i in range(m):
num = N - goods[i][0]
dt[i] = goods[i][0]
location[i] = str(i)
#主件
if goods[i][2] == 0:
for j in range(m):
#还可以选择另外一件主件
if goods[j][2] == 0 and i != j and goods[j][0] <= num:
dt[i] += goods[j][0]
location[i] = location[i] +"," +str(j)
num -= goods[j][0]
#i的一个附件
elif goods[j][2] > 0 and i != j and (goods[j][2] - 1) == i and goods[j][0] <= num:
dt[