Код для вычисления количества мест в грузовой машине (Python)
425 UAHТребуется написать небольшой код для вычисления количества "машин доставки" для отправки посылок, которые имеют характеристики: "Складируемые" и "Не складируемые"
Нужно по факту найти:
Количество мест требуемого в машине
Количество Машин полных, что потребовалось для доставки
Количество оставшихся мест, что не залезли в машины
Условие: 1 машина может перевозить максимум 10 000 кг и имеет 20 мест в кузове. (мест в кузове не равно количеству паллет)
Клиенты в течении какого то времени заказывают товар, и нам надо его моментально отправить, поэтому мы смотрим сразу сколько машин и отдельных мест нам требуется.
Мы отправляем товар который "можно" ставить друг на друга - это "складируемый" и товар "что невозможно ставить друг на друга" - "не складируемый".
Складируемый товар имеет отметку "складируемый", но он не должен превышать 1200 мм и весить более 350 кг. (на этих условиях 1 товар занимает 0.5 места, т.е. на него можно поставить второй такой же, и тогда 2 паллеты = 1 место) Если масса или высота груза превышает, то такой товар занимает 1 место в машине.
"Не складируемый" товар имеет соответствующую отметку, его высота и масса может быть любой и такой груз занимает 1 место в машине.
Условие: 2, иногда имеются паллеты "не складируемые" с размером 1200 мм и весят менее 350 кг. Такие паллеты в теории можно поставить на "складируемые" паллеты, но никак не снизу.
Т.е. вторым условием будет: Если "не складируемая" паллета имеет высоту менее 1200 мм и весит Меньше "складируемой" паллеты, но вес не более 350 кг, то ее можно поставить на "складируемую" паллету и в таком случае в машине будет занято только 1 место.
Так же иногда в заказе у нас есть 2 паллеты "складируемые" но высота первой = 1400 мм, по факту она занимает 1 место, так как высота превышает условия, но в таком случае мы можем найти "складируемую" или " не складируемую" паллету размеров не выше 1000 мм и весом не более паллеты снизу, так чтобы общая высота была не выше 2400 мм и не более 700 кг за обе паллеты.
Найти:
Сколько мест в машине занимают паллеты для каждого заказа / Сколько всего машин потребуется
Ход выполнения задачи:
Можно выбрать любой метод, что Вам удобен и понятен. Возможно было бы "выгодней" заполнять машину следующем образом: Сначала заполняем машину складируемыми паллетами, затем смотрим сколько складируемых паллет осталось и пытаемся на них поставить "более" мелкие "не складируемые" и далее уже ищем сколько мест требуется еще для " не складируемых" и находим тем самым сколько всего мест потребовалось, где 20 мест = 1 машине.
Пример данных:
Желтым отмечен первый клиент, кто сделал 2 января 2020 заказ из 4 наименований, 3 заказа по 2 штуки и 1 заказ на 4 штуки.
Мы видим, что если паллета полностью заполнена, то ее максимальная высота 940 мм, так же видим что вес паллеты может достигать максимум 176 кг, и у нее есть отметка: "складируемая" = 2 ( отметка 1 = не складируемая, отметки 2, 3, 4 = складируемые) Далее предпоследний столбик = это сколько максимум штук вмещается на 1 паллету. Т.е. например первая строка заказа: на 1 паллету вмещается 168 штук и высота такой паллеты будет 940 мм. Но у нас заказано всего 2 штуки, т.е. мы по факту повезем 2 штуки на 1 паллете и высота такой паллеты будет = 11 мм (940 мм / 168 шт * 2 шт заказа), т.е. итог: чтобы перевести эти 2 шт товара, нам нужна 1 паллета и 11 мм, значит мы сможем еще сверху поставить еще 1 паллету. Общее количество мест в машине: 2 места ( 1 место будут занимать 2 паллеты друг на друге с товарами по 2 и 4 шт, 2ое место: груз с 2 и 2 шт). Данный заказ не требует отдельной машины = 0 машин, но требует всего 2 места в машине.
Второй пример: заказ отмечен синим:
тут имеются как "складируемые, так и не складируемые" паллеты. Но все паллеты меньше 1200 мм, значит потенциально "не складируемую паллету" можно поставить сверху "складируемой, если ее вес "меньше" складируемой но не более 350 кг.
Сразу видим что общее количество штук меньше целой "паллеты".
Так же видим что общий вес "не складируемой" паллеты выше, чем вес любой другой паллеты, значит у нас не выйдет поставить "не складируемую" паллету поверх какой то другой. Значит она займет 1 место.
3 остальных заказа займут 2 места: 1 место для 2ух паллет, и 1 место для оставшейся 1 паллеты, хоть она и "складируемая" .
Общее количество мест в машине 3, и целой машины нам не требуется, кол машин = 0
Приложения 1
-
2650 100 0 Здравствуйте! С удовольствием возьмусь за проект. Моя специальность (искусственный интеллект, machine learning), поэтому есть опыт работы с аналогичными заданиями. Понимаю, что вам надо.
Сделаю всё в сроки и качественно, при необходимости объясню каждый шаг.
Буду рада сотрудничеству!
-
186 2 0 Здравствуйте, готов выполнить проект
Есть некоторые детали чтобы обсудить
Жду обратной связи
-
219 1 0 Опыт разработки CRM, ERP более 20 лет , автоматизация птицефабрик , строительных компаний, водоканалов, станций техобслуживания автомобилей ...
Ввод, хранение и управление Резюме / Ведение табеля рабочего времени и управления проектами, расчет заработной платы. sims.secom.in.ua/
Есть разработаные системы бухалтерского учета c WEB-интерфейсом (учет финансово -расчетных операций, расчет зарплаты, учет товаро-материальных ценностей
Имеем бодьшой опыт разработки и сопровождения WEB- систем управления сетью магазинов(Реально работает , например в Дубайе и в Украине) и корпоративных сайтов поддержки и сопровождения WEB- систем управления предприятиями.
Опыт поддержки и разработки web-систем более 10 лет в том числе интернет -магазинов. В основном самописные PERL,PHP, CGI, JavaScript, Ajax, JQuey, HTML, CSS, MySQL .
Готов поработать с Вами.
-
6127 71 2 5 Добрый день. Готовы выполнить вашу задачу. Есть опыт реализации очень похожей задачи.
Разработает программу (desktop или web интерфейсом) с учетом всех ваших требований и пожеланий.
Даем гарантию на выполненную работу.
Так же сдаем в аренду сервера под ваше программное обеспечение.
Актуальные фриланс-проекты в категории AI и машинное обучение
Построить модель классификации клиентов1. Есть данные клиентов в Mongo/SQL (примерно 20 000 записей с сырыми данными). 2. Необходимо на их основе построить фичи и модель классификации клиентов на поведенческие группы. 3. Проект выполнить на Python. AI и машинное обучение, Python ∙ 7 часов 17 минут назад ∙ 16 ставок |
Інтеграція в CRM модулів сканерів стоматологій
27 000 UAH
Мы разработали CRM систему для взаимодействия с зубными врачами и лабораториями. Нужно интегрировать сервисы iTero, sirona, medit и др чтобы подтягивались файлы автоматически AI и машинное обучение, Java ∙ 9 часов 2 минуты назад ∙ 11 ставок |
Создать команду AI агентовХочу создавать себе команду AI агентов, которые будут помогать в повседневной жизни, контролировать бизнес процессы, анализировать отчеты и тд. AI и машинное обучение ∙ 11 часов 23 минуты назад ∙ 17 ставок |
ИТ Автоматизация ведения VAT-отчетности
10 000 UAH
Необходимо разработать систему для автоматизации переноса данных о продажах из CRM в бухгалтерскую систему Wafeq. Система должна импортировать банковские и платежные отчеты, автоматически сверять платежи с инвойсами, формировать инвойсы для VAT-отчетности и минимизировать ручную… AI и машинное обучение, Python ∙ 12 часов 41 минута назад ∙ 28 ставок |
Разработка AI-агента по продажам для интернет-магазина на PrestaShop 1.6 с интеграцией KeyCRMИщем разработчика или небольшую команду для создания AI-консультанта по продажам для интернет-магазина учебной литературы. Сайт работает на PrestaShop 1.6, CRM — KeyCRM. Нужен не обычный чат-бот с готовыми ответами, а AI-продавец, который поможет клиенту подобрать нужные книги и… AI и машинное обучение, Интернет-магазины и электронная коммерция ∙ 17 часов 56 минут назад ∙ 34 ставки |
