- ベストアンサー
組合せ文字列をルールに従って並べる方法とは?
- A、B、C、D、Eの組合せ文字列をルールに従って並べることは可能なのか?
- 組合せ文字列の並べ方には2つのルールがあります。
- 同じ文字が9個以上続かないようにしながら、カードを並べて行きます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
35通り? 31通りじゃないですか? それはさておき。 ルール2について、同じ文字(例えばA)を含むカードはたった12枚しかない。となると、10枚以上連続してAを含むカードが並ぶようにする方が難しいんじゃなかろうか。というわけで、まずはルール1に注目します。 31枚のカードを机の上に適当にばらまいて、互いに「上下に置ける」もの同士の間を線で結ぶと、カードをノードとするひとつの無向グラフができます。ルール1だけを考えると、「このグラフ上でAから出発して、全てのカードを通る経路を求む」という問題です。 まずは実際にグラフを描いてみてはいかがでしょう。こんな風にすると見やすいでしょう: カードを4つのグループに分けます。 グループ1: 1文字のカード全部と、AB, BC, CD, DE, AE。 グループ2: 2文字のカードの残り5枚と、ABD, BCE, ACD, BDE, ACE。 グループ3: 3文字のカードの残り5枚と、4文字のカード全部。 グループ4: ABCDE 次に三重の同心円を考えて、それぞれの円にグループをひとつずつ割当て、同心円の中心にグループ4を置きます。もうちょっと詳しく言うと、 (1)大きな円の円周上にグループ1を並べます。まずA~Eを等間隔で並べ、AとBの中間にABを置く。BとCの中間にBC、以下同様。互いに「上下に置ける」もの同士の間を線で結べば10角形になります。 (2)一回り小さい円の円周上にグループ2を並べます。Aの近くにBEを置く。Bの近くにAC。以下BD、CE、ADを置く。またABの近くにABD、BCの近くにBCE、以下ACD、BDE、ACEを置いて行きます。互いに「上下に置ける」もの同士の間を線で結びます。自己交差のある10辺形が現れるでしょう。一番大きい円とはAB-ABD、BC-BCE、のように5箇所だけで繋がることになります。 (3)一番小さい円の円周上にグループ3を並べます。BEの近くにABEを置く。ACの近くにABC、以下BCD、CDE、ADE。ABEとABCの中間にABCE、以下ABCD、BCDE、ACDE、ABDE。互いに「上下に置ける」もの同士の間を線で結ぶと、10角形が現れます。 (4)真ん中にABCDを置く。互いに「上下に置ける」もの同士の間を線で結びます。 こう並べると、対称性がはっきり見えるでしょう。 経路のひとつの例として、グループを順番に網羅して行くのはどうでしょうか。最初にグループ1を全部網羅する。Aから出発して一番大きい円を一周するだけです。次にグループ2を網羅する。これには二番目の円を2つ飛ばしで3周します。それからグループ3を網羅する。三番目の円を一周するだけです。で、最後がABCDE。 さて、ルール2を満たすような経路が存在するかどうか、というのがご質問ですが、上記の例はどうでしょうかね。
お礼
本当に間違いだらけの質問にとても丁寧な解答をしていただいてありがとうございました。 どう考えてこの問題を解けば良いのかすら分からなかった物ですから、 考え方を教えていただいたことは非常に参考になりました。 ありがとうございました。
補足
さっそくありがとうございます。 >35通り? 31通りじゃないですか? ご指摘の通りです。31通りです。すみませんでした。m( _ _ )m 他にも誤字だらけで何を考えてたんでしょう。 お恥ずかしい限りです。