rhakdnj / Algorithm

0 stars 0 forks source link

[BOJ] 19942 | 다이어트 #41

Open rhakdnj opened 2 years ago

rhakdnj commented 2 years ago

문제 링크


📌 TODO

rhakdnj commented 2 years ago
def combination(arr: list, n: int) -> list[list]:
    ret = []
    if n == 0:
        return [[]]
    if n == 1:
        return [[i] for i in arr]

    for i in range(len(arr)):
        elem = arr[i]
        c = combination(arr[i + 1:], n - 1)
        for rest in c:
            ret.append([elem] + rest)
    return ret

def permutation(arr: list, n: int) -> list[list]:
    ret = []
    if n == 0:
        return [[]]
    if n == 1:
        return [[i] for i in arr]

    for i in range(len(arr)):
        elem = arr[i]
        p = permutation(arr[:i] + arr[i + 1:], n - 1)
        for rest in p:
            ret.append([elem] + rest)
    return ret