황소개발자

백준 15649 파이썬 python : N과 M (1) @@황소처럼 우직하게@@ 숏코딩 본문

백준 문제 풀이

백준 15649 파이썬 python : N과 M (1) @@황소처럼 우직하게@@ 숏코딩

hjp845 2020. 3. 1. 19:25
반응형
n, m = map(int, input().split())

check = [False for i in range(n + 1)]
subs = [i for i in range(m)]

def go(idx, n, m):
    if idx == m:
        print(' '.join(map(str, subs)))
        return
    else:
        for i in range(1, n + 1):
            if check[i] == False:
                check[i] = True
                subs[idx] = i
                go(idx + 1, n, m)
                check[i] = False

go(0, n, m)

1. 길이 m에 도달하면 종료

2. 모든 n 탐색, 선택되지 않은 것들에 대해서 재귀

반응형
Comments