У меня есть следующая проблема. У пользователя есть тележка с элементами N
. Существует количество Q
каждого элемента. Кроме того, существуют хранилища P
, и каждый из них имеет определенный уровень запасов для каждого продукта (который может быть 0). Расстояния между каждым складом и клиентом также известны. Мне нужно найти набор складов, которые могут вместить заказы и удовлетворять следующим ограничениям (упорядоченным с уменьшением приоритета):
- Он должен содержать минимальное количество складов
- Все склады должны быть как можно ближе к клиенту.
Любые идеи высоко ценятся. Спасибо!
UPD:
Если один склад не может полностью выполнить какую-либо позицию, он может быть доставлен несколькими различными складами. Например. нам нужно 10 яблок, и у нас есть 2 склада с запасами 7 и 3. Затем яблоки будут обеспечены этими двумя складами (всего 10).
UPD 2 Количество доступных складов составляет около 15. Так грубая сила здесь не поможет.