Код на
Haskell ниже. Надо подождать секунд 30-40, пока интерпретатор посчитает и выдаст результат.
Код:
import Data.List
ps = [[1.8,180,20,0,9], [1,190,3,0,10], [0.28,30,40,50,7], [3.4,10,865,6,12],
[2.9,260,310,20,60], [0.5,130,30,650,20], [0.1,21,2,200,10]]
me = [118,56,500,8]
f ksi = (foldr1 (zipWith (+)) . zipWith (\l k -> map (*k) l) ps $ ks, ksi)
where ks = map fromIntegral ksi
vs 0 = [[]]
vs n = [0..5] >>= \x -> map (x:) $ vs (n-1)
main = print $ head . sort . filter (all (<=0) . zipWith (-) me . tail . fst) . map f . vs $ 7
Ответ:
Код:
GHCi, version 8.0.1: http://www.haskell.org/ghc/ :? for help
Prelude> :cd C:\Users\admin\Documents\MyHaskell
Prelude> :load "MyBruteForce.hs"
[1 of 1] Compiling Main ( MyBruteForce.hs, interpreted )
Ok, modules loaded: Main.
*Main> :main
([0.78,160.0,70.0,700.0,27.0],[0,0,1,0,0,1,0])
*Main>
Исправил расчёты
в Эксель по оптимизации набора продуктов.
Вложение: