공통
BFS는 큐에 넣을 때, DFS는 스택에서 나올 때(재귀 호출됐을 때) 방문 체크하는게 좋음
최단 경로를 구할 땐 visited 배열을 int로 선언해서 거리를 저장해서 변수를 아낄 수 있음
- 1697 (숨바꼭질)
- x-1, x+1, 2*x를 배열에 넣어서 반복문으로 처리할 수도 있지만...중복이 그렇게 많아지는 편은 아니라 큰 문제 없음
- 동생이 수빈이 뒤에 있을 수 있음
- 4963 (섬의 개수)
- BFS도 좋지만 재귀 DFS로 하면 코드가 더 간단해진다는거 알려드리기
- 땅의 수를 미리 저장할 필요 없음! 스도쿠 문제 때처럼 이중 for문 돌면서 찾기
- 19538 (루머)
- 큐에 들어간 정점(cur)은 모두 루머를 유포&믿는 사람들
- 큐에 정점이 중복돼서 들어가지 않으므로 cur에 연결된 모든 정점에 대해 루머를 믿는 주변인을 반복해서 계산할 필요 없음 (시간복잡도가 커짐)
- 1520 (내리막 길)
- 탐색을 끝냈지만, dp값이 0일 수 있음
- 거리두기 확인하기
- 각 고사장에 대해 bfs 함수 실행하도록
- 맨허튼 거리 하드 코딩하지 않도록
- 단어 변환