Друзья, по алгоритмике вопрос, подскажите какой алгоритм искать (разузлование / рюкзак / коммивояжер вспомнил, но вроде это все не то) для следующей задачи:
- есть спецификации (рецептуры) на готовые блюда, собираемые из полуфабриктов (ПФ), глубина вложенности у рецептур всегда 1 (т.е. нет ПФ, собираемых из других ПФ)
- по остаткам ПФ на складе нужно посчитать, сколько блюд можно из этих ПФ собрать
- для блюд, конкурирующих друг с другом по составу (т.е. в рецепте которых есть хотя бы один и тот же ПФ), указывается статистический вес (типа приоритет) этих блюд (цифрой, например вес блюда 1 = 10, вес блюда 2 = 20, при остатке общего ПФ = 10 этот ПФ должен распределиться между этими двумя блюдами пропорционально этому весу, т.е. ~ 3.3 : 6.6)