Мне нужно реализовать функцию Haskell, которая получает один Int (грузоподъемность грузовика) и список Ints (модели ящиков, которые могут быть загружены на грузовике).Реализация алгоритма Greedy, Haskell
Чтобы определить, какие коробки модели должны быть размещены предпочтительно в грузовике, он просил, чтобы коробки с большей мощностью в относительно свободного пространства, всегда помещается первым.
Алгоритм должен возвращать список моделей ящиков для размещения на грузовике. Я не знаю, как программировать эту функциональную парадигму:/
maximizeLoad 103 [15, 20, 5, 45, 34]
[45, 45, 5, 5]
Спасибо!
Как вы это сделаете на другом языке? – ErikR
Почему не ответ '[34, 34, 34]'? Попробуйте прочитать проблему с суммой подмножества и определить, какие свойства вам нужно для решения проблемы. –
хорошо проблема выглядит как рюкзак (грубая сила будет '' maximumBy (сравните сумму 'on'). Filter ((<= 103). Sum) $ substences [15,20,5,45,34]' ') - но это не позволит выбирать элементы более одного раза – Carsten