2つのリスト{k}と{ls}が与えられたとき(ただし、前者のリストの要素数は1つとし、後者のリストの要素数は任意とします。また、リスト内の各要素は、自然数とします。例えば、2つのリストは、{3}と{2,3,4}など。)
、前者のリスト{k}の k という自然数を後者のリスト内の各々の各要素の自然数に振り分けるようにしてにできたリストたちの集まり(リスト)を得たいと考えています。
例えば、2つのリスト{3}と{2,3,4}が与えられたときに、この2つのリストから、新たなリスト{{5,3,4},{4,4,4},{4,3,5},{3,5,4},{3,4,5},{3,3,6},{2,6,4},{2,5,5},{2,4,6},{2,3,7}}を得たいと考えています。
自分でもいろいろと試行錯誤してみましたが、mathematicaになれていないせいからか、なかなか上手くいきません。何かよい方法はないでしょうか?
No.1ベストアンサー
- 回答日時:
キモは整数kをより小さな整数に分割する部分ですが、IntegerPartitionsという組み込み関数でできてしまいます。
あとは、その順列をすべて求めて、それぞれをリスト{ls}に足したものを返せば良くなります。
例えば、
f[a_, b_List] := (b + #) & /@ Flatten[Permutations[PadRight[#, Length[b]]] & /@ IntegerPartitions[a], 1]
として、
f[3, {2, 3, 4}]
とすると、
{{5, 3, 4}, {2, 6, 4}, {2, 3, 7}, {4, 4, 4}, {4, 3, 5}, {3, 5, 4}, {3, 3, 6}, {2, 5, 5}, {2, 4, 6}, {3, 4, 5}}
が得られます。
順序が気になるのであればSortしてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 大学・短大 C言語線形リストの問題です 3 2022/12/22 00:45
- その他(プログラミング・Web制作) pythonにおける単方向リストの実装について 4 2022/07/13 12:34
- その他(プログラミング・Web制作) python コードについて(初学者です) 3 2023/07/20 14:44
- Excel(エクセル) エクセルの数式について教えてください。 7 2023/06/18 10:16
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/06 09:28
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/06/15 14:11
- その他(プログラミング・Web制作) どういうプログラムで組みますか?google colabでやってるんですけど、出来る方お願いします。 1 2022/07/17 18:41
- その他(プログラミング・Web制作) このプログラミングをどう組みますか? Googlecolabでやってるんですが、出来る方お願いします 1 2022/07/13 10:52
- Excel(エクセル) Excelのリストにある文字を含むセルを、複数の色で色付けしたいです 2 2022/08/11 17:39
- Chrome(クローム) Google Cromeのブックマークのリストの複数の項目を一括して消去する方法はないのでしょうか? 1 2023/08/16 21:15
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
数学A場合の数について。
-
重複順列
-
5人の人々を3人と2人のグループ...
-
4ケタの暗証番号 何通り?
-
円順列の問題です。 大人2人と...
-
数学Aです。 7種類の異なる果物...
-
1.2.3のランダムに混じった数値...
-
00~99、AA~ZZの組み合わせっ...
-
数学の問題です。 A.B.C.D.E.F...
-
円順列
-
数学の問題で4C0の答えを教えて...
-
数学の質問です。 1〜6までの番...
-
キュートアグレッション キュー...
-
数学の順列の問題です。 なぜ、...
-
数学Aの応用問題
-
順列・組合わせの記号(P、Π、...
-
みかん、りんご、めろんの3種類...
-
a.b.c.d.eの5個から3個を選んで...
-
数学・組み合わせの質問です。
-
男子4人と女子4人が輪の形にな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
重複順列
-
数学の問題で4C0の答えを教えて...
-
5人の人々を3人と2人のグループ...
-
00~99、AA~ZZの組み合わせっ...
-
3つの数の組み合わせの求め方
-
a.b.c.d.eの5個から3個を選んで...
-
数学
-
円順列の問題です。 大人2人と...
-
数学A A,B,C,D,E,F,G,Hの8文字...
-
数学の質問です。 1〜6までの番...
-
数学Aです。 7種類の異なる果物...
-
9人を3人ずつの3つのグループに...
-
円順列
-
数学の問題です。 A.B.C.D.E.F...
-
数学に関する質問です。
-
順列・組合わせの記号(P、Π、...
-
男子3人、女子4人が並ぶ。女子...
-
n! や nPrの読み方教えて下さい!
-
数学のP(x)=などのpとはなんで...
-
数学A 9人を3人ずつの3組に分け...
おすすめ情報