Войти Создать аккаунт

Включения и сортировка · 15 из 15

Раскладка витрины

Задействованы также: Списки, Вложенные структуры

На главной странице шесть мест, и Костя требует: не больше двух товаров одной категории подряд, иначе витрина выглядит как склад. Внутри этого ограничения — по убыванию рейтинга.

Что сделать

Разложите товары по местам на главной — так, чтобы витрина не выглядела складом.

Что приходит

  • tovary — список товаров: словари с ключами "название", "категория" и "рейтинг"

  • mest — сколько мест на витрине

Что вернуть

Список названий: каждый раз товар с наибольшим рейтингом, который не даст трёх одной категории подряд; при равном рейтинге — по алфавиту; подходящих нет — список кончается раньше.

Допишите функцию razlozhit в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

Пример

А, Б и В — «дом» с рейтингами 5, 4,9 и 4,8, Г — «сад» с рейтингом 1. Первые два места — А и Б. В был бы третьим «домом» подряд, поэтому третьим идёт Г, а за ним уже можно В: ["А", "Б", "Г", "В"].

Тот же пример кодом
Вызов
razlozhit([{'название': 'А', 'категория': 'дом', 'рейтинг': 5.0}, {'название': 'Б', 'категория': 'дом', 'рейтинг': 4.9}, {'название': 'В', 'категория': 'дом', 'рейтинг': 4.8}, {'название': 'Г', 'категория': 'сад', 'рейтинг': 1.0}], 4)
Вернуть
['А', 'Б', 'Г', 'В']
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.