Python identificar todos la suma de n y k combinaciones, la combinación puede contener sólo un número entero positivo de 1-9 y el número repetible no existir en cada combinación.

por ejemplo: Entrada: k = 3, n = 9

        Salida: [[1,2,6], [1,3,5], [2,3,4]]

        Entrada: k = 2, n = 5

        Salida: [[1,4] [2,3]]

-------------------------------------------------- ----------------------------------

from itertools import combinations
def num(k,n):
    nums=[1,2,3,4,5,6,7,8,9]
    res=[]
    for i in range(len(nums)):
        res +=list(combinations(nums,i))
    res=[x for x in res if len(x) == k]
    a=[]
    for j in res:
        if sum(j) ==n :
            a.append(list(j))
    return a

 

Publicado 35 artículos originales · ganado elogios 26 · Vistas a 80000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_42342968/article/details/99711035
Recomendado
Clasificación