시작이 반

[백준] 15652번(python 파이썬) 본문

알고리즘/백준

[백준] 15652번(python 파이썬)

G_Gi 2021. 1. 10. 17:03
SMALL

 


N과 M 3에서 중복을 제거한 문제이다.

반복문에 

if depth == 0 or solve[depth - 1] <= i: 조건을 추가한다. 

이전 노드보다 크거나 같은 숫자에 한에서 반복문을 돌린다.

 


n, m = map(int, input().split())
solve = []
visited = [False] * (n + 1)

def Dfs(depth):
    if depth == m:
        print(' '.join(map(str, solve)))
        return
    for i in range(1, n + 1):
        if not visited[i]:
            if depth == 0 or solve[depth - 1] <= i:
                solve.append(i)
                Dfs(depth + 1)
                solve.pop()

Dfs(0)

 

LIST

'알고리즘 > 백준' 카테고리의 다른 글

[백준] 15657번(python 파이썬)  (0) 2021.01.10
[백준] 15654번(python 파이썬)  (0) 2021.01.10
[백준] 15651번(python 파이썬)  (0) 2021.01.10
[백준] 15650번(python 파이썬)  (0) 2021.01.10
[백준] 15649번(python 파이썬)  (0) 2021.01.10