Это то, что я сделал для автобусной туристической компании давным-давно, и я никогда не был доволен результатами. Недавно я думал об этом старом проекте и решил вернуться к этой проблеме.
Проблема:
Компания Bus Travel имеет несколько автобусов с различной вместимостью пассажиров (например, 15 автобусов на 50 пассажиров, 25 автобусов на 30 пассажиров и т. Д.). Они специализировались на предложении перевозки для очень больших групп (более 300 пассажиров на группу). Поскольку каждая группа должна путешествовать вместе, им необходимо эффективно управлять своим парком, чтобы сократить количество отходов.
Например, 88 пассажиров лучше обслуживают три автобуса с 30 пассажирами (2 свободных места), чем два автобуса с 50 пассажирами (12 свободных мест). Другой пример: 75 пассажиров лучше обслуживать одним автобусом на 50 пассажиров и одним автобусом на 30 пассажиров, что является смесью типов.
Какой хороший алгоритм для этого?