<p>1. <b>Цель проекта</b><br />Создать программу для автоматизации составления расписания смен столов и сотрудников в здании, которая учитывает ограничения и требования к работе сотрудников, перерывам и распределению по этажам и столам.<br />* Программа должна автоматически составлять расписание работы сотрудников на основе предварительно введённых данных (список столов и сотрудников).<br />* Возможность задать количество сотрудников, которые одновременно могут быть на перерыве (минимум 1 человек на перерыве).<br />* По возможности, сотрудники не должны садиться за один и тот же стол два раза подряд. В случае необходимости повторное размещение допустимо.<br />* Распределение сотрудников по этажам должно минимизировать их перемещение между этажами.<br />* Программа должна позволять корректировать расписание в случае опозданий сотрудников или непредвиденных ситуаций. Например, если сотрудник опаздывает, его часы работы должны быть автоматически скорректированы.<br />* Возможность просмотра и изменения текущего расписания в реальном времени.<br />* Алгоритм должен учитывать следующие правила:<br />* Сотрудник не может работать дольше 2 часов без перерыва.<br />* Нельзя иметь 2 перерыва подряд.<br />* Работники не должны работать за одним столом подряд, если это возможно<br />* Можно выбирать максимальное количество сотрудников на перерыве.<br />* Алгоритм должен минимизировать перемещение сотрудников между этажами.<br />* Программа должна учитывать предпочтения сотрудников при необходимости</p>