>>948
和と積の計算を入れ替えればいいのでプログラムを書き直して
Mが最小になる値を探索
4組
> re
[,1] [,2] [,3]
[1,] 14 50 54
[2,] 15 40 63
[3,] 18 30 70
[4,] 21 25 72
> apply(re,1,sum)
[1] 118 118 118 118
> apply(re,1,prod)
[1] 37800 37800 37800 37800

5組
> re
[,1] [,2] [,3]
[1,] 11 84 90
[2,] 12 63 110
[3,] 15 44 126
[4,] 18 35 132
[5,] 22 28 135
> apply(re,1,sum)
[1] 185 185 185 185 185
> apply(re,1,prod)
[1] 83160 83160 83160 83160 83160

>941の結果と合致。

4組目の和の118の倍の236だと
> (fn(236,4))
[,1] [,2] [,3]
[1,] 16 85 135
[2,] 17 75 144
[3,] 18 68 150
[4,] 30 36 170
4組はみつかるけど

> (fn(236,5))
[1] 0
5組はみつからないから、最小となるMは必ずしも前の組の2倍ではないみたい。