自分で考えて計算してみたところ、1080通りという結果になりました(以下の計算)。
(5C3 * 6!) / ((3! * (2/3)) + (2! * (1/2)))
一般的な解法があるとしたらどのようなものでしょうか。
"イタリアで買った、柄の違うスカーフが6枚ある。これを全部、4人の友人に分けたいが、何通りの分け方があるか?ただし、不公平になるのは仕方ないが、誰にも少なくとも1枚はあげるとする。"
『離散数学「数え上げ理論」』 野崎昭弘著 例題1-3
abcdの4人に対してベタに展開してみました
3枚x1人+1枚x3人のパターン
abcd
1113 6*5*4 一人目1/6、二人目1/5、三人目1/4、残りが四人目
1131 6*5*4
1311 6*5*4
3111 6*5*4
6*5*4*4=480
2枚x2人+1枚x2人のパターン
abcd
1122 6*5*4*3 一人目1/6、二人目1/5、三人目1/4と1/3、残りが四人目
1212 6*5*4*3
1221 6*5*4*3
2112 6*5*4*3
2121 6*5*4*3
2211 6*5*4*3
6*5*4*3*6=2160
合計
480+2160=2640パターン
激しく自信が無いのだけれど、コメント欄が開いてないので、恥を忍んで、回答で。
ともだち四人を区別するか、四人分に分けるかで、答えが違ってくる。
ともだち四人を区別する場合には、まず、最初に六枚から一枚ずつ四人に取るのが、6P4。
残り二枚は、四人から、あげる人を二人選んで、4P2。
なので、あげかたは 6P4 × 4P2 で、4320 通り。
ともだち四人を区別せずに、四人分に分けるとしたら、
六枚から、一枚ずつ四人に上げる分が 6C4。
残り二枚を、四つに分けた一枚のどれかに当てはめるのだけれど、逆にすると別の組合せになるから、4P2。
で、あげ方の組み合わせは 6C4 × 4P2 で、180 通り。
さあ、合ってるかな...
異なるr個のものを異なるn個の組に分ける方法の数(0個の組も含む)は、nΠr=n^r
よって、4^6=4096
これから、0個の組を含む場合を引けばよい。
異なるn個のものを異なる2組に分ける方法の数(0個の組はない)は、2^n-2
異なるn個のものを異なる3組に分ける方法の数(0個の組はない)は、3^n-3(2^2-2)-3
1つの組だけに分ける方法の数は、4通り。
∴2つの組だけに分ける方法の数は、
(2^6-2)*4C2=(2^6-2)*6=372通り。
∴3つの組だけに分ける方法の数は、
(3^6-3(2^6-2)-3)*4C3=(3^6-3(2^6-2)-3)*4=2160通り。
∴4^6-2160-372-4=1560通り。
10進BASICで、計算させてみました。1560と出ました。(^_^;
! ネクタイa~fを友人1~4に分ける LET cnt=0 FOR a=1 TO 4 FOR b=1 TO 4 FOR c=1 TO 4 FOR d=1 TO 4 FOR e=1 TO 4 FOR f=1 TO 4 LET s$=STR$(a)&STR$(b)&STR$(c)&STR$(d)&STR$(e)&STR$(f) IF POS(s$,"1")*POS(s$,"2")*POS(s$,"3")*POS(s$,"4")<>0 THEN !PRINT s$ LET cnt=cnt+1 END IF NEXT f NEXT e NEXT d NEXT c NEXT b NEXT a PRINT cnt END
コメント・トラックバック非表示のため失礼ながら訂正を回答欄で行わせていただきます
3枚x1人+1枚x3人のパターン
abcd
1113 6*5*4 一人目1/6、二人目1/5、三人目1/4、残りが四人目
1131 6*5*4
1311 6*5*4
3111 6*5*4
6*5*4*4=480
2枚x2人+1枚x2人のパターン
abcd
1122 6*5*(4*3/2) 一人目1/6、二人目1/5、三人目1/4と1/3、残りが四人目
1212 6*5*(4*3/2)
1221 6*5*(4*3/2)
2112 6*5*(4*3/2)
2121 6*5*(4*3/2)
2211 6*5*(4*3/2)
6*5*(4*3/2)*6=1080
三人目は選択する順番が逆なだけな組み合わせが存在するため4*3=12ではなく半分の6
合計
480+1080=1560パターン
1560通りですね。
パターンは2つしかありません。1人に3枚と3人に1枚ずつ。2人に2枚ずつと1人に1枚ずつ。
1人3枚あげるパターンは残りの3人が1枚ずつ取った時点で3枚もらえる人のスカーフが決まりますから、6P3×4C1で480通り。
2人に2枚ずつと1人に1枚ずつのパターンはまず4人を2枚ずつ貰える組と1枚しかもらえない組の2つに分ける組み合わせは4C2で6通りと解ります。
6枚のスカーフを2枚ずつ計4枚の組と2枚の組に分ける組み合わせは2枚取れば終わりですから、6C2で15通り。4枚のスカーフを2人で2枚ずつ分ける組み合わせは4枚の内2枚取れば決まりますから4C2で6通り。同様に2枚のスカーフを1枚ずつ分けるのは2C1で2通りです。
6×15×6×2=1080
480+1080=1560
となります。
私も離散数学はイマイチ理解出来ていないのですが、この問題ですと
「異なるn人に、異なるm個の物を最低でも一人一つのものを受け取る。」なので
S[m,n]*n! (Sはスターリン数、第2種)
S[6,4]*4! = 65*24 = 1560 になります。
コメント(0件)