Всем привет! Возвращаемся к алгоритмам. Сегодня интересная задача среднего уровня. Есть некоторое распределение людей на группы. Причем нам дан список, в котором индекс соответствует человеку, а значение размеру группы, в которой человек находится. Нужно вернуть распределение людей по группам, то есть список состоящий из списков индексов изначального списка (надеюсь понятно 😄) Первое время смотрел на задачу, не понимая как за нее взяться. Как распределять индексы по спискам, как определять не превысили ли они предельный размер и т.д. Даже загуглил, как создать пустой список заданного размера (вот так например: n = [None]*10). Но потом в голове выплыла мысль про словари. Точнее то, что решение большинства алгоритмических задач требует использования словарей (из вот этого видео). И тут дело пошло… Для начала я сделал пустой словарь. Далее в цикле добавлял создавал список для каждого размера группы. Если такой ключ (размер группы уже существует), то добавлял значение индекса к этому спи