Необходим алгоритм минимизации затрат для ящиков с фиксированной ставкой USPS

У меня есть клиент, который отправляет жидкости в коробках с фиксированной ставкой USPS. Если вы не знакомы с коробками с фиксированной ставкой USPS, то это коробки определенного объема, которые отправляются независимо от веса. Все, что помещается в коробке, доставляется по одной низкой цене. Мой клиент использует коробки двух размеров: коробки средней фиксированной ставки и коробки большой фиксированной ставки. Кроме того, мой клиент отправляет свои жидкости в бутылках трех размеров: 200 мл, 375 мл и 750 мл. Более того, из-за формы бутылок только определенное количество бутылок может поместиться в каждую коробку, а из-за их формы минимизация затрат не может быть определена путем вычисления с использованием объема каждой коробки и объемов бутылок. Таким образом, в каждой коробке есть разное расположение бутылок, которые могут работать. Например, средняя коробка может вместить 3 бутылки 200 мл и 2 375 мл или 4 бутылки 200 мл и 1 бутыль 375 мл, и существует много других возможных вариантов размещения в зависимости от количества бутылок каждого размера. В приведенной ниже таблице, которую я назову таблицей конфигураций , перечислены возможные варианты расположения каждой бутылки в коробке каждого размера. Кроме того, доставка большой коробки стоит 14,50 долларов, а средней - 10,70 долларов ( http: //www.usps. ru / price / priority-mail-price.htm ).

SQL Table Configurations    
Box Type, 200ml, 375ml, 750ml, Cost
Medium Flat Box, 5, 0, 0, 10.70
Medium Flat Box, 4, 1, 0, 10.70
Medium Flat Box, 3, 2, 0, 10.70
Medium Flat Box, 0, 3, 0, 10.70
Medium Flat Box, 4, 0, 0, 10.70
Medium Flat Box, 3, 0, 0, 10.70
Medium Flat Box, 2, 0, 0, 10.70
Medium Flat Box, 1, 0, 0, 10.70
Medium Flat Box, 0, 2, 0, 10.70
Medium Flat Box, 0, 1, 0, 10.70
Large Flat Box, 0, 0, 2, 14.50
Large Flat Box, 0, 0, 1, 14.50
Large Flat Box, 4, 3, 0, 14.50
Large Flat Box, 0, 6, 0, 14.50
Large Flat Box, 0, 5, 0, 14.50
Large Flat Box, 0, 4, 0, 14.50
Large Flat Box, 8, 0, 0, 14.50
Large Flat Box, 7, 0, 0, 14.50
Large Flat Box, 6, 0, 0, 14.50

Например, в первой строке таблицы указано 5,0,0, что указывает на то, что контейнер со средой может вместить 5 бутылок по 200 мл и никаких других бутылок. Используя приведенную выше таблицу расположений, найдите алгоритм для расчета оптимального расположения с учетом стоимости доставки для отгрузки набора из x бутылок по 200 мл, y бутылок на 375 мл и z бутылок на 750 мл. Ваш алгоритм должен не только вычислять минимальную стоимость, но и возвращать оптимальное расположение бутылок среди коробок разного размера. Мне было бы особенно интересно увидеть ваш алгоритм, выраженный в SQL, но решения на процедурном языке, таком как Java, PHP или C, также определенно будут полезны. Я считаю, что это происходит после добавления ограничений внешнего ключа. Что я могу сделать, чтобы добавить новые столбцы без ...

Почему я получаю сообщение о том, что таблица должна быть удалена и создана заново, когда я добавляю / перемещаю столбцы? Я считаю, что это происходит после добавления ограничений внешнего ключа.

Что я могу сделать, чтобы добавить новые столбцы, не удаляя таблицу?

18
задан tvr 9 October 2010 в 09:14
поделиться