2012-02-13 6 views
1

ラウンドロビントーナメントアルゴリズムは、ゲームごとにチームにのみ出会うときにうまく動作します。しかし、同じゲームで2つ以上のチームが出会うスポーツやゲームのトーナメントでは、どのようにそれを実装しますか?例えば2からnのチームが2からnのゲームで会うpaintball大会のように。すべてのチームがホームチームでなければならないという制約を常に守ってください(チームが均等に分割できない場合は、できるだけ少数のチームがホームチームにならないようにしてください)アルゴリズムスケジューリング、マルチチーム/ゲームを使用したラウンドロビントーナメント

アイデアはありますか? givensはチーム数、ゲーム数です。おそらく、1ゲームあたりのチーム数が与えられている可能性があります。

答えて

2

ゲームで3つのチームをプレイする必要がある場合は、キュービックrepresantationを使用することができます(ゲームのnチームのためにn-hypercubeになるでしょう)。もちろん、すべての可能なチームの組が各チームと一緒にプレーするということです。それはたくさんのゲームです。各チームでプレイされるゲームの合計は(n-1)(n-2)/ 2です。今までプレーされたゲームの合計はn *(n-1)(n-2)/ 3です! (3は1試合あたりのチーム数です)。だからあなたは(n-1)(n-2)/ 3を持つことができます!すべてのチームがプレーする場所でプレーします。 一般に、1つのゲームでk人のチームがプレーしている場合、1チームあたりの合計プレーは(n-1)!/(n-k)!(k-1)!です。合計ゲーム数はn!/(n-k)!k!で、(n-1)!/(n-k)!k!ゲームは家庭で遊んだ。

+0

私が行っているケースでは、ゲームごとのチームを最大限にすることが唯一の現実的な解決策です。 –

関連する問題