♦️백트래킹(Backtracking)에 활용모든 경우를 탐색하지만, 가능성이 없는 경로는 미리 포기한다. 쓸데없는 재귀 호출을 줄여서 속도를 높일 수 있다. 예시 문제 [N-Queen] : N×N 체스판에 N개의 퀸을 놓을 수 있는 경우의 수를 구하라. 단, 퀸은 같은 행, 열, 대각선에 놓일 수 없다. 1. 백트래킹한 줄씩 퀸을 배치하면서 모든 가능한 경우를 탐색만약 조건을 만족하지 않으면 즉시 탐색을 중단 (Pruning)2. 프루닝같은 열이나 같은 대각선에 퀸이 있으면 가지치기!def is_safe(row, col, queens): """현재 (row, col)에 놓을 수 있는지 체크""" for r, c in enumerate(queens): # 이전에 놓은 퀸들의 위치 ..