[백준 10974] 모든 순열

1. 문제 설명

모든 순열

2. 문제 분석

전형적인 순열 백트래킹

3. 나의 풀이

import sys

n = int(sys.stdin.readline().rstrip())
numbers = [i for i in range(1, n+1)]

def DFS(permutation_list):
    if len(permutation_list) == n:
        print(*permutation_list, sep=' ')

    for i in range(n):
        if not visited[i]:
            visited[i] = True
            permutation_list.append(numbers[i])
            DFS(permutation_list)
            permutation_list.pop()
            visited[i] = False

visited = [False for _ in range(n)]
DFS([])

좋은 웹페이지 즐겨찾기