1941 소문난 칠공주
2019. 5. 18. 12:32ㆍ알고리즘/백준
dfs 완전탐색 문제
1. visit를 7개의 순열로 하나씩 검사해야 하는데 다 만들기에는 너무 빡세다. 외판원 순회에서 적용했던 비트마스크 visit 변수를 놓는다면 쉽게 해결할 수 있다. 즉 (1<<25) 크기의 배열을 만든다음 방문한 것은 true로 놓으면서 방문 검사를 할 수 있다. 예를 들어 1 2 7 8 노드를 방문했다면 visit[(1<<1) | (1<<2) | (1<<7) | (1<<8)] = true로 놓을 수 있다
2. 그 다음은 디버깅을 통해 발견했는데, 오직 한 점에서만 확장되는 것이 아니라 같은 집합의 요소들도 확장할 수 있다는 점이었다. 따라서 한 번 움직일 때 집합 노드를 모두 움직여서 탐색했다.
'알고리즘 > 백준' 카테고리의 다른 글
9997 폰트 (0) | 2019.05.22 |
---|---|
3273 두 수의 합 (0) | 2019.05.18 |
10755 공항 (0) | 2019.05.17 |
1963 소수 경로 (0) | 2019.05.17 |
2098 외판원 순회 (0) | 2019.05.17 |