質問: 順列組合せについて 12名で年6回ゴルフコンペを行っております。 4名1組で計3組でラウンドしておりますが この6回の内に他の11名すべての人と なるべく重複しないように組を組むには どういった組み合わせ方をすれば 良いでしょうか? 宜しくお願い致します。
回答: odenon909さん、今晩は。#1のものです。この週末に 家でプログラムを作って結果を出そうとしたら土日とも 休日出勤と相成ってしまいました。(泣) さて、私もstomachmanさんの条件(1')(2)(3)を充たすものを探そうとしています。 (1') 任意の対は高々3回しか実現しない。 (3) 任意の対が少なくとも一回は実現される。 (2) 3人の組合せは高々一回しか実現しない。 で、プログラミングの方針として次の二つのものを立てました。 この方針に則ってプログラムを作ってくれる奇特な人はいないかな。 ただ、組み合わせ論に慣れた人でないと結構大変だろうけど。 勿論時間ができれば、私が作ります。(締め切られていない場合ですが) 方針1 強引な方法 ラウンドとは12人を4人からなる3つの集合に分割したもの。 (以降は、便宜上10番目、11番目、12番目の人を夫々a,b,cで表わす) 従って、その全体(以下roundとする)はc(11,3)c(7,3)=5775通り。 第1ラウンドは次のように決めて良い。 r1:[1234][5678][9abc] 従って、2~6ラウンドをどう決めるかが問題。 1 12人中の3人の組合せは全部でc(12,3)=220通りだが、r1で12通りの 3人組みが既に実現されている。この12通りの集合をaとする。 2 12人中の4人の組合せは全部でc(12,4)=495通りだが、r1の4つと 集合aを含む4人組みを全て取り除く。得られた集合をxとする。 3 roundからxの要素に含まれない4人組みを含むラウンドを取り除く。 得られた集合をyとする。 ここでかなりのギャップ。 4 yの要素の5個の組で同じ3人組を含まないものを全て求める。 5 4で得たものの中で、条件(2)(3)を充たすものを取出す。 方針2(組合せ理論のある定理を使った方法)はまた明日にでも 書き込みます。但し、その定理が有効かどうかはまだ見えていません。 単なる使ってみたいだけと言う事もあります。