Если считать вручную.
Сначала найдем сколько при таком колве ресурсов можно максимум создать изделий
max A = min(20/2,15/3,16/4) = min(10,5,4) = 4
max B = min(20/3,15/1,12/3) = min(6.6,15,4) = 4
Впринцепе выгоднее выпустить максимум изделия А и на остальные ресурсы В
Это получится 4А+3В = 29уе
На всякий случай проверим и другие варианты.
0A + 4B = 12y.e.
1A + 4B = 17y.e.
2A + 4B = 22y.e.
3A + 4B = 27y.e.
4A + 3B = 29y.e.
Расчеты проводились кодом на Руби
Pa = [2,3,4,0]
Pb = [3,1,0,3]
CostA=5
CostB=3
for i in 0..4
a=0
b=0
praw = [20,15,16,12]
f = true
while a < i and f do
(0...praw.size).step(1) { |j| f = false if praw[j] - Pa[j] < 0}
break if not f
(0...praw.size).step(1) { |j| praw[j] -= Pa[j]}
a += 1
end
f = true
while f do
(0...praw.size).step(1) { |j| f = false if praw[j] - Pb[j] < 0}
break if not f
(0...praw.size).step(1) { |j| praw[j] -= Pb[j]}
b += 1
end
puts "#{a}A + #{b}B = #{CostA*a + CostB*b}y.e."
end
Ответ 4A + 3B = 29y.e.