Como obtenho uma lista de todas as combinações possíveis de preços de produtos para atingir um custo desejado?
Suponha que eu tenha uma lista de três produtos (A, B C). Cada produto tem um preço. Dado um custo total, desejo encontrar todas as combinações de produtos possíveis iguais exatamente a esse custo.
té agora eu tentei coisas como:
for price in product:
ret = []
for i in range(int(totalCost / price), -1, -1):
ret.append(i)
for c in range(1, len(products)+1, 1):
ret.append(int(products[c-1][1]/products[c][1]))
E aqui é onde eu fico preso. Isso me fornecerá uma lista de possibilidades, mas incluirá apenas os produtos posteriores (além do local atual) à lista. Não será necessário incluir o começo e, portanto, me dar todas as possibilidade
O que preciso fazer para obter todas as possibilidades?