-
나의정답.
#define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <string> #include <algorithm> #include <vector> #include <stack> using namespace std; void DFS(int maxLevel, int curLevel, const int* arr) { int level = curLevel; int* a = new int[maxLevel]; for (int i = 0; i < maxLevel; i++) { a[i] = arr[i]; } if (curLevel > maxLevel) { for (int i = 0; i < maxLevel; i++) { if(a[i] == 1) printf("%d ", i + 1); } printf("\n"); return; } a[curLevel - 1] = 1; DFS(maxLevel, curLevel + 1, a); a[curLevel - 1] = 0; DFS(maxLevel, curLevel + 1, a); delete[] a; } int main(int argc, char** argv) { //freopen("input.txt", "rt", stdin); int maxLevel; scanf("%d", &maxLevel); int* arr = new int[maxLevel]; for (int i = 0; i < maxLevel; i++) arr[i] = 0; DFS(maxLevel, 1, arr); delete[] arr; }
'알고리즘 문제풀기 > 인프런 강의 정답' 카테고리의 다른 글
61. 특정 수 만들기 (MS 인터뷰 문제 : DFS 완전탐색) (0) 2022.05.04 60. 합이 같은 부분 집합 (아마존 인터뷰 문제 : DFS 완전탐색) [재귀 & 깊이/넓이 우선탐색(DFS, BFS)] (0) 2022.05.03 58. 이진트리 깊이우선탐색 (DFS: Depth First Search) [재귀 & 깊이/넓이 우선탐색(DFS, BFS)] (0) 2022.04.29 57. 재귀함수(스택)를 이용한 2진수 출력 [재귀 & 깊이/넓이 우선탐색(DFS, BFS)] (0) 2022.04.27 56. 재귀함수 분석 (스택을 이용하는 재귀) [재귀 & 깊이/넓이 우선탐색(DFS, BFS)] (0) 2022.04.27