Ordenando por preço e importância

Crie uma função que retorne uma lista dos itens mais importantes que podem ser comprados com um determinado orçamento. Você receberá um dicionário dct contendo itens e seus respectivos preços e importância, e também receberá um orçamento b para limitar a quantidade de itens que você pode comprar. A importância só pode estar entre 1 e 10, enquanto o preço e o orçamento podem ser quaisquer valores.

Exemplo

price_importance_sort({
  "apples": { "price": 5, "importance": 3 },
  "oranges": { "price": 3, "importance": 2},
  "pears": { "price": 2,  "importance": 2}
}, 5) ➞ ["oranges", "pears"]

As laranjas e as peras podem ser compradas dentro do orçamento, com uma importância total de 4. Não é possível comprar maçãs e laranjas ou peras devido ao orçamento, e as maçãs sozinhas têm apenas um valor de importância de 3, tornando o grupo de laranjas e peras preferível.

Notas

  • Mais importância é melhor, não pior (não é uma classificação de 1º/2º/3º lugar).
  • Todo o orçamento pode ser usado.
  • Em caso de empate, use a opção mais barata/mais importante das duas.
  • Ordene a lista final alfabeticamente.