過去ログ

「数学」小旅行
#51290
私もやってみました。正しいのかどうかはわかりません。
a=(1..10).to_a
b=a.combination(5).map{|x|(a-x).permutation(5).map{|y|x[0].fdiv(y[0])+x[1].fdiv(y[1])+x[2].fdiv(y[2])+x[3].fdiv(y[3])+x[4].fdiv(y[4])}}
c=[];b.each{|z|c=c+z}
p c.count{|s|s<1.8}
p c.count{|s|s<2}
p c.count{|s|s==s.to_i&&s<=7}
p c.count{|s|s==s.to_i}

で、1.8未満では5通り、
2未満では105通り、
7以下の整数になるのは57通り、
単に整数になるのは185通り、になったのですが。。。

1.8未満のケースは
a=(1..10).to_a
b=a.combination(5).each{|x|(a-x).permutation(5).each{|y|if x[0].fdiv(y[0])+x[1].fdiv(y[1])+x[2].fdiv(y[2])+x[3].fdiv(y[3])+x[4].fdiv(y[4])<1.8 then p x,y end}}
により、次の5通りだと出ました。

分子[1, 2, 3, 4, 5]
分母[6, 7, 8, 9, 10]

分子[1, 2, 3, 4, 5]
分母[6, 7, 8, 10, 9]

分子[1, 2, 3, 4, 5]
分母[6, 7, 9, 8, 10]

分子[1, 2, 3, 4, 5]
分母[6, 8, 7, 9, 10]

分子[1, 2, 3, 4, 5]
分母[7, 6, 8, 9, 10]
   2月17日(木) 8:23:01     51297

過去問題一覧へ戻る