重複組み合わせ
repeated_combination
説明
異なる n 種類のものから重複を許して r 個取る組合せ
総数は、n+r-1Cr
サンプル
たとえば、赤・白・黒の3種類の玉から、重複を許して3個をとる組み合わせは
赤赤赤、赤赤白、赤白白、赤白黒、赤赤黒、赤黒黒、白白黒、白黒黒、白白白、黒黒黒
玉3個と境2個について、 〇|〇|〇 を使った、同じものを含む順列と考える
〇が玉の位置、|が境界の位置。境界が、色の境目になる。境界数は、玉の色3種類 - 1
すると、左から、玉の位置が赤・白・黒に相当
OOOII > 赤赤赤
OOIOI > 赤赤白
OOIIO > 赤赤黒
OIOOI > 赤白白
OIOIO > 赤白黒
OIIOO > 赤黒黒
IOOOI > 白白白
IOOIO > 白白黒
IOIOO > 白黒黒
IIOOO > 黒黒黒
また、5個の場所(_ _ _ _ _)から、3個を選んだ組み合わせと考えることもできる
Ruby
組み込みメソッド
https://docs.ruby-lang.org/ja/latest/method/Array/i/repeated_combination.html
コード
重複組み合わせの列挙:再帰
https://paiza.io/projects/xfWb-Hulyiphdgisd2vN6g
参考ページ
重複組合せとは – 重複組合せの公式の意味 | きぬごしのお受験ブログ
https://toufumentals-kinugoshi.com/duplicate-combination/
(4) 【高校 数学A】 場合の数34 重複組合せ(10分) - YouTube
https://www.youtube.com/watch?v=zRDiXGDIT8o
重複組合せの考え方|思考力を鍛える数学
http://www.mathlion.jp/article/ar101.html
#順列・組み合わせ