Menu
Coddy logo textTech

O Que Comprar

Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 88 de 88.

challenge icon

Desafio

Fácil

Leia uma lista de compras e o inventário da loja a partir da entrada, depois determine quais itens podem ser comprados.

Você receberá:

  1. Primeira linha: nomes de itens separados por vírgula representando sua lista de compras
  2. Segunda linha: o número de itens no inventário da loja
  3. Linhas seguintes: cada uma contém um nome de item e quantidade separados por uma vírgula

Por exemplo, a entrada de inventário apples,5 significa que a loja tem 5 maçãs em estoque.

Para cada item em sua lista de compras, imprima o nome do item seguido por - Yes se ele puder ser comprado, ou - No se não puder.

Um item pode ser comprado se:

  • Ele existir no inventário da loja E
  • Sua quantidade for maior que 0

Se um item não estiver no inventário de forma alguma, ou tiver uma quantidade de 0, imprima No.

Por exemplo, se as entradas forem:

apples,bread,milk
3
apples,5
bread,0
milk,3

A saída deve ser:

apples - Yes
bread - No
milk - Yes

Se as entradas forem:

eggs,butter,cheese,yogurt
2
eggs,12
cheese,0

A saída deve ser:

eggs - Yes
butter - No
cheese - No
yogurt - No

Se as entradas forem:

water
1
water,100

A saída deve ser:

water - Yes

Experimente você mesmo

# Ler a lista de compras (itens separados por vírgula)
shopping_list = gets.chomp.split(',')

# Ler o número de itens no inventário
n = gets.to_i

# Ler o inventário da loja
inventory = {}
n.times do
  line = gets.chomp.split(',')
  item_name = line[0]
  quantity = line[1].to_i
  inventory[item_name] = quantity
end

# TODO: Escreva seu código abaixo
# Para cada item na lista de compras, verifique se ele pode ser comprado
# Um item pode ser comprado se ele existir no inventário E tiver quantidade > 0
# Imprima "item_name - Yes" ou "item_name - No" para cada item

Todas as lições de Fundamentos