対戦試合の組み合わせを求めるプログラムを作りたいんですが、
例えばA~Dのグループがあって、
一日に一試合として、各対戦相手と必ず一回はホームで勝負し、また以下の日程ではそのチームはホームで試合できない
A:1,4日目
B:4,5日目
C:2日目
D:2,3,5日目
とすると、組み合わせ左に書いてあるチームがホームとすると(例:A-B C-D ならAとCがホーム)
1日目:B-A,D-C
2日目:A-C,B-D
3日目:A-D,B-C
4日目:D-A,C-B
5日目:A-B,C-D
6日目:C-A,D-B
のように試合が組める。また日程はグループ数*2-2の日数で実現できる。
この場合に、グループ数が増えた場合にも対応した日程の組み方のアルゴリズムがおもいつきません。
どなたか詳しい方ご教授おねがいします
ご教授お願いします
Re: ご教授お願いします
マルチ禁止
http://okwave.jp/qa/q6447711.html
まるなげ禁止
では、ありますが、1つ質問
グループ数が増えた時のホームで試合ができない日にちは
数学的にどう表せるのですか?
http://okwave.jp/qa/q6447711.html
まるなげ禁止
では、ありますが、1つ質問
グループ数が増えた時のホームで試合ができない日にちは
数学的にどう表せるのですか?
non
-
九州man
Re: ご教授お願いします
本当に申し訳ございませんでした。
まるなげ、マルチはいけないと分かりながらも載せました。
ご指導ありがとうございます。
ホームで試合ができない日は自分でオリジナルで決めてよいというプログラムです。
ただしA,B,C,Dの4チームが存在するときホームが以下の日程で使用できないとすると
A:1,2日目
B:2,3日目
C:3日目
D:3,5日目
このようなとき3日目に2試合を組むことができず,対戦ができない.そのときはエラーを出力する,という内容です.
やはりこのプログラムは再帰関数が必要になりますか?
ご返事いただければさいわいです.
まるなげ、マルチはいけないと分かりながらも載せました。
ご指導ありがとうございます。
ホームで試合ができない日は自分でオリジナルで決めてよいというプログラムです。
ただしA,B,C,Dの4チームが存在するときホームが以下の日程で使用できないとすると
A:1,2日目
B:2,3日目
C:3日目
D:3,5日目
このようなとき3日目に2試合を組むことができず,対戦ができない.そのときはエラーを出力する,という内容です.
やはりこのプログラムは再帰関数が必要になりますか?
ご返事いただければさいわいです.
- softya(ソフト屋)
- 副管理人
- 記事: 11677
- 登録日時: 15年前
- 住所: 東海地方
- 連絡を取る:
Re: ご教授お願いします
フォーラムルールに従い相互リンクをお願いします。
http://dixq.net/board/board.html
http://dixq.net/board/board.html
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。
-
九州man
Re: ご教授お願いします
http://okwave.jp/qa/q6447711.html
九州man さんが書きました: 対戦試合の組み合わせを求めるプログラムを作りたいんですが、
例えばA~Dのグループがあって、
一日に一試合として、各対戦相手と必ず一回はホームで勝負し、また以下の日程ではそのチームはホームで試合できない
A:1,4日目
B:4,5日目
C:2日目
D:2,3,5日目
とすると、組み合わせ左に書いてあるチームがホームとすると(例:A-B C-D ならAとCがホーム)
1日目:B-A,D-C
2日目:A-C,B-D
3日目:A-D,B-C
4日目:D-A,C-B
5日目:A-B,C-D
6日目:C-A,D-B
のように試合が組める。また日程はグループ数*2-2の日数で実現できる。
この場合に、グループ数が増えた場合にも対応した日程の組み方のアルゴリズムがおもいつきません。
どなたか詳しい方ご教授おねがいします