powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Алгоритм "набора" суммы
5 сообщений из 30, страница 2 из 2
Алгоритм "набора" суммы
    #36385824
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
копья ломаем ...
а там наверное простые ребята сидят, которые не оценят нашего юмора

метод вилки , метод пузырьковой сортировки; графы, стеки ... все звучит как анахроизмы ...
вон уже и программировать не надо уметь что бы работать програмистом 1с
...
Рейтинг: 0 / 0
Алгоритм "набора" суммы
    #36386063
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да вопрос то не в том чем пользоваться для решения задачи (хотя и не так страшна рекурсия как звучит )

а в том что для практических целей данная постановка (набрать чего-то на опр. сумму) задачи "не взлетает"

вот я предположим согласен с тем что в ~80% "кодить" в общепринятом смысле прогеру 1С и нет необходимости (сделать выборку потом перебором порассовывать куда-то чего-то и вкинуть результаты в хранилища или просто вывести в грид - не высокоаналитическая задача) зато есть необходимость включать моск для отрисовки там самой идеи (бизнес процесса и т.д. как пожелаете)

посему включая моск получаем следующую картину (опять же в подавляющем большинстве случаев)

1. есть отдел занимающийся комплектацией поставок на филиалы (торг. точки, удалённые склады напрямую клиенту и т.д.)
2. есть сформированные потребности точек т.н. "заказы/дефектура/потребность" (там уже или вручную или по мин. остаткам или по планам и т.д.)
3. есть политики резервирования в заказах (категоризация топы бренды и т.д. см. мой первый пост в этой теме)
4. есть политики ограничения заказов (в т.ч. и одна из них которая оглашена в задаче т.е. бюджет - лимит суммы выделяемый на закупки и заказы за опр. период)
5. логистика (сюда вообще пока не заходим) 6. 7. .... энное условия формирования "корзинки" :)


и уж поверьте после применения всего этого комплекса места для (забивки "от фонаря") останется оооочень мало и ломать копья насчет того чем пользоваться при наборе остатка просто не имеет смысла т.к. в любом случае это уже несущественно из-за малых объёмов и некритичности как по временным затратам на выполнение процедур так и для самого бизнеса


вот собственно пару процентов верхнего слоя темы а вы с пузырьков начали
...
Рейтинг: 0 / 0
Алгоритм "набора" суммы
    #36386072
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
просто не вижу смысла в подтверждении принципа 80/20 когда 80% времени реализации задачи уйдёт на наименее весомую преследуемую цель
...
Рейтинг: 0 / 0
Алгоритм "набора" суммы
    #36386967
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Last1Cmen
а вроде против вас ничего и не имею ...

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

поскольку не надо искать оптимального пути ...

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

не пинайте меня я знаю сколько может сожрать евклидово объединение , но начальник хочет запросом ...
хотя если наложить дополнительные ограничения ... первый курсор будет и не таким большим ...
...
Рейтинг: 0 / 0
Алгоритм "набора" суммы
    #36390241
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leafвыбираем в первый курсор всю номенклатуру цена на которую меньше верхней планки ....
получилось уже не все множество, а урезанное
собственно этот курсор нужно перегнать на клиента и обработать ибо тривиальный набор из одной номенклатуры у нас уже есть сочетания из 1 по 1 вроде?
далее этот курсор объединяем (евклидовым умножением множеств?) с условием что бы итоговая цена была меньше планки ... находим нижнюю цену в евклидовом объединении
отсекаем в первом курсоре цены заведомо в сумме с минимальной превышающие планку
объединяем получившийся курсор с евклидовым по тем же условиям все со всеми ...
объявляем задачу решенной поскольку нам нужны наборы из трех предметов
Если нужно найти конкретно сочетания из N предметов, тогда, конечно же, можно сделать selfjoin N раз и с помощью having отобрать только те результаты, для которых сумма попадает в диапазон. Однако, такое решение менее эффективно и менее универсально, нежели рекурсивная процедура, которая находит комбинацию из произвольного количества предметов.
...
Рейтинг: 0 / 0
5 сообщений из 30, страница 2 из 2
Форумы / [игнор отключен] [закрыт для гостей] / Алгоритм "набора" суммы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]