알고리즘/문제풀이 - 백준
백준 1697 숨바꼭질
문제 : https://www.acmicpc.net/problem/1697 서론 bfs 문제. 풀이 bfs인데 탐색시간을 출력해야한다. 보통 bfs 문제는 2차원 배열을 만들기 때문에 한칸씩 옮겨질때마다 이전칸의 값에서 +1을 해줘서 최종 칸에서의 값을 탐색시간으로 출력해줬는데 이 문제는 배열을 만들지 않는다. (안만들려고 했는데 방문 확인 배열이 없으니 메모리초과를 출력해서 방문 확인 배열은 만들었다.) 그래서 반복문 반복 횟수를 체크했다. 그러나 큐의 반복 횟수를 전부 체크하면 안된다. int cnt = 0; while(q.empty()){ int qSize = q.size(); while(qSize--){ ... } cnt++; } cout n >> k; int cnt = 0; q.push(n); ..
2019. 8. 25. 22:02
최근댓글