У меня есть список событий, каждый из которых имеет продолжительность. Я ищу, чтобы написать алгоритм для планирования этих событий в течение дня. С 9 утра до 12 вечера, а затем с 1 вечера до не более 4 вечера и не позднее 5 вечера.Алгоритм планирования событий
Я не уверен, что будет хорошим подходом к решению этого вопроса. Так как может быть несколько возможных решений, моя первая мысль - проверить случайные комбинации для правильности.
Хотелось бы узнать, существует ли более детерминированный способ решения этого вопроса. Благодаря ;)
РЕДАКТИРОВАТЬ
@svs Время для событий в течение нескольких минут и события не должны перекрывать друг друга. Также нет необходимости в паузах между событиями, кроме обеденного перерыва с 12 вечера до 1 вечера.
Каковы ваши правила? Если у вас их нет, просто последовательно заполняйте расписание до тех пор, пока оно подходит. – ergonaut
Это проблема с рюкзаком с двумя рюкзаками. Для него нет известного полиномиального решения, хотя мы знаем псевдополиномиальный для целых весов. – Danstahr
'У меня есть список событий, каждый из которых имеет продолжительность.' Какое разрешение длительности - секунды, минуты, часы? Событие не должно пересекаться? Должны ли быть паузы между событием? Какие-либо ограничения вообще? Стараетесь свести к минимуму оставшееся время для этих двух временных окон? – svs