재귀 2

[n9742] 순열 in python

재귀함수 너무 어렵다 ㅠㅠ.. 매번 풀어도 헷갈리고 적응 안되는 것들 중 하나가 재귀함수 :( 너무 지저분하게 코드를 짠 것 같아서 좀 더 고민해보고 찾아봐야겠다 ㅠㅠ 일단은 for문 안에서 1차적으로 첫번째 숫자를 고른 뒤 permu 함수를 실행한다. permu 함수 내에서 for문을 또 따로 돌려주고 그 안에서 재귀함수를 호출하여 순열을 찾아나가면 된다. 만약 현재 값이 입력값과 개수가 똑같고 answer_num이 n과 같다면? 답을 찾은것이다! answer_num = 0 answer = '' def permu(n, cnt): global answer_num global answer if len(answer) == len(word): answer_num += 1 if answer_num == n: r..

[n6603] 로또 in python

백트래킹을 사용하여 풀어나간 문제! 이번에는 방문하는 노드 체크 과정을 빼먹지 않고 잘 했다! for문에서 시작점 부분을 함수 매개변수로 넘겨주는 부분을 설정하지 않아서 애먹었던... cnt가 6 => 즉, 6개의 숫자를 모두 뽑아낸 경우에는 그 숫자들을 모두 출력한다. print(*array)를 하게 되면, 배열 형식으로 출력되지 않고 1 2 3 4 5 6 이런식으로 출력된다! # k=array[0] # array[1]~array[7] = 원소 배열 def dfs(array, cnt, temp, i): k = array[0] if cnt == 6: print(*temp) return for i in range(i, k + 1): if visited[i]: # 방문한 노드 continue visited[..