Форум сайта python.su
0
Добрый день, прошу Вашей помощи в реализации одного личного проекта, т.к сам еще новичок и не способен самостоятельно обуздать всю мощь Python.
Нужно придумать алгоритм который будет размещать прямоугольники в контейнере, при этом прямоугольники обладают массой а контейнер лимитом массы. При превышении лимита по массе или размерам нужно создать новый контейнер и продолжить размещение в нем.
Допустим,
размер контейнера: 11300х2400, лимит по массе 21000,
размеры прямоугольника №1 1640х800 масса 637 количество 7,
размеры прямоугольника №2 2050х1210 масса 856 количество 7,
размеры прямоугольника №3 2550х1610 масса 1274 количество 4.
Для наглядности приложу пару картинок, как это примерно выглядит:
https://ibb.co/PFK4spd
https://ibb.co/k9whGZH
Вопрос заключается в том, можно ли создать алгоритм который будет перебирать все возможные варианты размещения и выбирать вариант с минимальным количеством контейнеров?
При этом желательно чтобы была возможность вывести количество, типы и общую массу прямоугольников в каждом контейнере.
Если у кого есть идеи прошу ответить или предложите свои варианты решения.
За ранее благодарю!
Отредактировано SoftwerEnginer (Апрель 30, 2019 10:50:50)
Офлайн
857
Похоже на классическую задачу о рюкзаке
wiki. задача о рюкзаке
Офлайн
568
SoftwerEnginer
Вопрос заключается в том, можно ли создать алгоритм который будет перебирать все возможные варианты размещения и выбирать вариант с минимальным количеством контейнеров?
SoftwerEnginerПитон - это средство реализации алгоритма, то есть вся его “мощь” никоим образом не отменяет для вас этап собственно алгоритмизации. Алгоритмы вообще опосредованно относятся к языкам программирования, алгоритмировать можно хоть на русском языке.
не способен самостоятельно обуздать всю мощь Python
Офлайн