October 2023 1 15 Report
На входе есть массив учеников типа:
[
{id: 1, maxMeetingsPerWeek: 10, meetingsTypes: ["group", "duo"]},
{id: 2, maxMeetingsPerWeek: 3, meetingsTypes: ["duo"]}
{id: 3, maxMeetingsPerWeek: 5, meetingsTypes: ["group"]},
{id: 4, maxMeetingsPerWeek: 5, meetingsTypes: ["group"]},
{id: 5, maxMeetingsPerWeek: 1, meetingsTypes: ["duo", "group"]}
]

ЗАДАЧА: отгруппировать учеников таким образом, чтобы
1) каждая группа имела общий тип встреч (т.е. если ученик хочет встречи только 1 на 1, следует это учитывать)
2) кол-во встреч каждого ученика не превышала maxMeetingsPerWeek
3) число учеников на каждой встрече было разное, но не меньше 1
4) ученики на каждой встрече отличались (чтобы не встречались одни и те же ученики)

На выходе должен быть 2d-массив встреч типа [[user, user], [user, user, user]]
Любой язык программирования. Не обязательно, но желательно использовать графы.
Добавил файл с примером какой результат должен получиться.
Please enter comments
Please enter your name.
Please enter the correct email address.
You must agree before submitting.

Answers & Comments


Copyright © 2024 SCHOLAR.TIPS - All rights reserved.