
Baekjoon/백트래킹
[백준] 15649 N과 M (1) (실버3) / 백트래킹
문제요약 나의 코드 및 설명 중복없이 M개를 고른 수열을 ans에 저장하기 위해 main 함수에서 visited 리스트를 생성하고, ans에 해당 수가 저장된다면 visited의 동일 인덱스에 1을 저장한다. ans = [] def dfs(index): #index자리 if len(ans) == m: print(" ".join(map(str, ans))) return if index == n: return for i in range(1, n+1): if visited[i] == 0: #ans에 현재의 값이 들어있는지 확인 visited[i] = 1 #지금 들어가니까 방문처리 ans.append(i) dfs(index+1) #다음 자리를 결정하는 함수 호출 visited[i] = 0 ans.pop() #갔..