トーナメントの組合せ
当HP読者のHN「とあるAKBファン」さんからの出題です。(平成26年2月18日付け)
(n+1)チームがトーナメント形式で対戦をするときの試合数は、n試合ある。また、トーナ
メント表の形の数は、カタラン数 Cn=(2n)!/((n+1)!n!) 通りある。
トーナメント表の形が決まっているとき、対戦の組み合わせの数は単純な組み合わせ計算
で求められる。
では、勝ち残り式トーナメント戦で、nチームが対戦するとき、対戦の組み合わせは何通り
になるか?
〈条件〉 ※aとbの勝者を、[a,b]とする。
・表の形は山が偏っていてもいなくてもよいものとする。
(例) [[[[[[[a,b],c],d],e],f],g],h] でも、[[[a,b],[c,d]],[[e,f],[g,h]]] でも可。
・表にしたとき順番が異なっていても組み合わせが同じなら同じものとして数える。
(例) [[[a,b],[c,d]],[[e,f],[g,h]]] と [[[b,a],[d,c]],[[g,h],[f,e]]] は同じものとする
また、[[a,b,c],[d,e],[f,g,h,i]] のように3チーム以上の対戦を含めると何通りになるか?
(答) DD++さんが考察されました。(平成26年2月19日付け)
[a,[b,c]]と[[b,c],a]とはトーナメント表の形は違うものの、対戦相手は同じなので同一視して
よいのですよね。
準決勝以下をまとめてAブロックBブロックとした場合、Aブロックに k 人、Bブロックに残り
n-k 人を振り分ける方法は、nCk通り(高校数学風表現)。あとはそれぞれのブロックで独立
にトーナメントを組めばよい。
AブロックとBブロックのメンバーをそっくり入れ替えたパターンの存在に注意すると、
an=(1/2) Σ k=1〜n-1 nCkak・an-k
が成り立つ。これより、 a1=1、a2=1 なので、a3=(1/2)(3C1a1・a2+3C2a2・a1)=3
以下同様にして、 a4=15、a5=105、a6=945、…… から、
an=(2n−3)!! (通り) ですね。
ここで、Double factorial of odd numbers: (2n−1)!!=1・3・5・・・・(2n−1) である。
(→ 参考:「A001147」から引用)
a(n) = sum{i=1,...,n} C(n,i-1)*a(i-1)*a(n-i). [_Dennis Walsh_, Dec 02 2011]
(注:これは、an=(2n-1)!! なので項が1つずれています。こっちの問題の1/2はその影響)
※ 対戦が2チームとは限らない場合はかなり面倒そうですね。3チーム対戦で2チーム次戦
に勝ち上がるというような制度の可否でさらに問題が分裂しますし...。
とあるAKBファンさんからのコメントです。(平成26年2月19日付け)
そんな単純な式で表せるのですか。n=85(去年のAKBじゃんけん大会の参加者数)のとき、
167!!=3.94×10^150 ・・・ あまりに多すぎて実感がわかない...。
また、1チーム勝ち上がりのみに限定した場合と、勝ち上がりチーム数を限定しない場合(1
回戦から40人→20人→5人→1人というように人数を絞っていく方法も含まれる)にはどのよう
な式になるのでしょうか?
DD++さんからのコメントです。(平成26年2月20日付け)
そんな単純な式で表せるのですか。これは私もびっくりしました。どうせうんざりする式にな
ると高を括って睡眠導入剤がわりに考えていたのですが、思わぬ結果に逆に目が覚めまし
た。