분류 전체보기129 백준 15654번 : N과 M (5) 문제 링크 : www.acmicpc.net/problem/15654 내 풀이(2021.1.5.) : #include #include #include using namespace std; vector list; bool visit[8]; int N, M; void search(vector& v) { // 해를 찾음 if (v.size() == M) { for (int i = 0; i < v.size(); i++) { printf("%d ", v[i]); } printf("\n"); return; } // 탐색 for (int i = 0; i < list.size(); i++) { if (visit[i] == true) continue; visit[i] = true; v.push_back(list[i]); .. 2021. 1. 5. 백트래킹 개념 출처 : chanhuiseok.github.io/posts/algo-23/ * 백트래킹 = 되추적 = Backtracking - 유망(promising)하면 탐색을 계속 진행하고, 유망하지 않으면 부모 노드로 다시 돌아가(Backtracking)는 기법 (유망하다 = 해가 될 가능성이 있다) - 다시 말해, 탐색 중 유망성 검사를 통해 가지치기(pruning)를 하는 기법 - DFS는 모든 노드를 탐색하지만, 백트래킹은 모든 노드를 탐색하지 않을 수 있다는 점에서, 성능 차이가 있음 - 자식 노드로 내려갈 때는 방문 표시를 하고, 부모 노드로 올라갈 때는 방문 취소를 함으로써, 방문 여부를 마치 스택처럼 관리해야 하는데, 이는 주로 재귀 함수의 전후에 방문 여부를 변경해주는 식으로 구현한다. (아래와 같.. 2021. 1. 5. 밑바닥부터 시작하는 딥러닝 1권 8장 요약 교수님과 학부 연구생들끼리 인공지능 스터디를 했는데 다음은 내가 발표한 1권 8장의 PPT 발표 자료이다. https://www.youtube.com/watch?time_continue=1&v=eVccQ82BekI&feature=emb_logo 2021. 1. 5. 밑바닥부터 시작하는 딥러닝 1권 4장 요약 교수님과 학부 연구생들끼리 인공지능 스터디를 했는데 다음은 내가 발표한 1권 4장의 PPT 발표 자료이다. 2021. 1. 5. 이전 1 ··· 23 24 25 26 27 28 29 ··· 33 다음