Я ищу алгоритм. Вкратце необходимо: у моей компании есть автостоянки для использования ее сотрудниками. Число сотрудников больше, чем слотов, поэтому их необходимо разделить сотрудниками на недельной основе. Места для парковки небольших или больших размеров (как и для автомобилей сотрудников). Большой слот может быть выделен маленькому автомобилю, но не наоборот. Все сотрудники не работают все дни. Иногда сотрудники могут запросить распределение временных интервалов вне очереди, что должно быть обязательным. Моя программа должна выполнить выделение. Кто-то может помочь?Алгоритм поворота игрового автомата
0
A
ответ
1
Один простой вариант - превратить это в экономику смешных денег. Дайте каждому сотруднику баланс очков. Заряжайте их, когда они используют слот, заряжая больше для больших слотов. Каждый поворот распределяет слоты сотрудникам, которые запросили их, а затем к присутствующим сотрудникам, которые имеют наибольший баланс очков, используя небольшие слоты, где это возможно. Затем давайте или принимайте одинаковое количество баллов от всех, чтобы поддерживать постоянный баланс, поэтому вам не нужно беспокоиться о переполнении.
Бросьте его на SAT-решатель и назовите его днем? –
В чем проблема, с которой вы сталкиваетесь при реализации своего алгоритма? Что вы еще пробовали? Пожалуйста, добавьте его в вопрос. –