昨日は普通の順列でしたが、今日は重複順列に挑戦します。
といっても、昨日作ったメソッドを少しいじくるだけなので、詳しいことについては昨日の記事を見ていただければ幸いです。
なお実装のイメージは
[2] => [2,1],[2,2],[2,3],[2,4] [2,1] => [2,1,1],[2,1,2],[2,1,3],[2,1,4]
という感じ。
とにかく配列に突っ込んでいくわけですね。
当然昨日と同じように、配列内の外見上同じ要素は別の要素として扱います。
つまり、まずインデックスの重複順列を生成してから、それをもともとの配列の値に還元していくという方法をとるわけです。
よしよしできたぜ――と威張るほどではありませんな。
本当に昨日のコピーですからね。まあ昨日の記事の補足ということで。
具体的には条件分岐を一つ削除しただけ。いやあ楽ちんでした。
その分記事の中身がすかすかとかは言ってはいけない