検索

ホームページ  >  に質問  >  本文

算法 - python 给定一个正整数a和一个包含任意个正整数的 列表 b,求所有<=a 的加法组合

例如,10,[1,2,3]

输出类似:
1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1
2 + 2 + 2 +2 + 2
3 + 3 + 3 + 2
3 + 2 + 2 + 2 + 1

注意:是小于等于,list 内的正整数有可能并不能正好等于 a.

PHP中文网PHP中文网2786日前1211

全員に返信(2)返信します

  • 大家讲道理

    大家讲道理2017-04-18 10:30:42

    itertools.combinations_with_replacement を通じて短いコードを書きます:

    リーリー

    返事
    0
  • 巴扎黑

    巴扎黑2017-04-18 10:30:42

    この問題が次の前提を満たすと仮定します:

    1. リストの要素は再利用できます

    2. 上限値以下の条件を満たせる組み合わせであれば、上限値を大きく下回ったり、ゼロであっても許容されます

    以下は暴力的な法律です:

    リーリー

    私が回答した質問: Python-QA

    返事
    0
  • キャンセル返事