Есть список игрушек, некоторые из которых имеются в N детских садах. Определить игрушки из списка:
• которых нет ни в одном из детсадов;
• которые есть в каждом из детсадов.
Python

7 Июн 2020 в 19:42
355 +1
0
Ответы
1
from collections import defaultdict
def find_toys(kindergartens):
toys_count = defaultdict(int)
for kindergarten in kindergartens:
for toy in kindergarten:
toys_count[toy] += 1
not_in_any_kindergarten = [toy for toy, count in toys_count.items() if count == 0]
in_every_kindergarten = [toy for toy in toys_count if toys_count[toy] == len(kindergartens)]
return not_in_any_kindergarten, in_every_kindergarten
# Пример данных
kindergartens = [
["ball", "doll", "blocks"],
["doll", "train", "blocks"],
["ball", "puzzle", "blocks"]
]
not_in_any, in_every = find_toys(kindergartens)
print("Игрушки, которых нет ни в одном детсаду:", not_in_any)
print("Игркушки, которые есть в каждом детсаду:", in_every)

Этот код создает функцию find_toys, которая принимает список списков kindergartens, где каждый внутренний список представляет игрушки в детском саду. Функция затем перебирает каждый список и подсчитывает количество игрушек с использованием словаря toys_count.

Затем функция находит игрушки, которых нет ни в одном детском саду (счетчик равен 0) и игрушки, которые есть в каждом детском саду (счетчик равен количеству детских садов).

Наконец, пример данных задается с тремя детскими садами и выводятся игрушки, которых нет ни в одном детском саду и игрушки, которые есть в каждом детском саду.

18 Апр 2024 в 11:13
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир