140306でもArray#permutationを用いたが、また別の問題を解いてみよう。
1〜8を下のa〜hに「右にいくほど大きくなり、下にいくほど大きくなる」ように
書き込む方法は何通りあるか?
a,b,c,d
e,f,g
h
i = 0
(1..8).to_a.permutation do |a, b, c, d, e, f, g, h|
if a<b and b<c and c<d and e<f and f<g and a<e and e<h and b<f and c<g then
i += 1
puts i
puts "[#{a},#{b},#{c},#{d}],[#{e},#{f},#{g}],[#{h}]"
end
end
(1..8).to_a.permutation do |a, b, c, d, e, f, g, h|
if a<b and b<c and c<d and e<f and f<g and a<e and e<h and b<f and c<g then
i += 1
puts i
puts "[#{a},#{b},#{c},#{d}],[#{e},#{f},#{g}],[#{h}]"
end
end
ちなみに、(Frame-Robinson-Thrall による鉤公式を用いれば)
λ=(4,3,1)のとき、
dim Sλ = 8!/(6*4*3*1*4*2*1*1) = 70
となり、
#STab(λ) = dim Sλ = 70
#STab(λ) = dim Sλ = 70
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。