*문제 출처는 백준에 있습니다.

문제 제목: 모든 순열 / 10974번 (실버 3단계)
문제 사이트: https://www.acmicpc.net/problem/10974
문제 설명

나의 풀이
def main():
n = int(input())
arr = [str(i) for i in range(1, n + 1)]
visited = [False] * n
def dfs(visited, result):
if len(result) == n:
print(' '.join(result))
return
for i in range(n):
if not visited[i]:
result.append(arr[i])
visited[i] = True
dfs(visited, result)
result.pop()
visited[i] = False
dfs(visited, [])
if __name__=="__main__":
main()

※ 알아야 할 것
재귀함수를 이용하여 문제를 해결하시면 됩니다!!
'Coding Test > 백준-Python' 카테고리의 다른 글
| 백준 / 컨베이어 벨트 위의 로봇 / 20055번 / Python (0) | 2025.06.23 |
|---|---|
| 백준 / 빙산 / 2573번 / Python (1) | 2025.06.18 |
| 백준 / 쇠막대기 / 10799번 / Python (0) | 2025.06.12 |
| 백준 / 제곱수의 합 / 1699번 / Python (0) | 2025.06.10 |
| 백준 / 덱 / 10866번 / Python (0) | 2025.06.08 |