Форум Gatchina OnLine

Форум Gatchina OnLine (https://forumgol.ru/index.php)
-   Программирование и разработка (https://forumgol.ru/forumdisplay.php?f=4)
-   -   задачка на сообразительность (https://forumgol.ru/showthread.php?t=4721)

Громозека 09.03.2007 14:41

задачка на сообразительность
 
нужно придумать алгоритм (не обязательно оптимальный) для следующей задачи:

Задача о максимальном объёме

Имеются m кубов с длинами рёбер a1, a2, . . . , am и параллелепипед размера h × w × d. Найти некоторое подмножество кубов, которые нужно разместить внутри параллелепипеда таким образом, чтобы они не пересекались и заполняли максимальную часть объёма параллелепипеда.

Insya 09.03.2007 15:35

ну если особо не думать, то можно сделать так: выбрать минимум из h, d, w, найти 4 набора кубов, сумма ребер которых(из каждого) максимально приближенa к min(h,d,w), затем выбрать второе по величине значение из h,d,w, проделать то же самое с оставшимися кубами, ну и то же самое сделать для последнего оставшегося значения из hdw. Не забывать учитывать, что когда для высоты, например, выбраны 4 набора кубов, то для ширины и глубины в наборе кубов будет уже два крайних. Вот, потом таким же образом заполнить стенки параллепипеда, затем "тело". Вряд ли ты что-то понял из моих слов, т к объяснить это без картинки и сидящего рядом человека очень трудно :))

pod 09.03.2007 18:21

Замуж, дура, срочно замуж!!! (с)

kainen 09.03.2007 20:14

Не надо ничего выдумывать и придумывать, учите линейное программирование.


Текущее время: 05:41. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions, Inc. Перевод: zCarot