최단경로. [9370]
[1. 문제 설명] 임의의 출발지에서 임의의 목적지들에 최단 경로로 갈 때, 특정 경로를 거치는 경로 역시 각 목적지들에 대해 최단 경로가 될 수 있는가? [2. 풀이 접근] A. 오답이었던 접근 방법 1 다익스트라 탐색 중, 특정 경로를 통과한 정보를 추가로 저장함 (from -> to 가 문제에 제시된 각 노드라면 true, 그렇지 않다면 false) 다익스트라 탐색 중, 목적지 노드에 도착한 경우, from node 내 정보를 토대로, 특정 경로를 통과했다면, 해당 목적지는 특정 경로를 통과했다고 저장. (경로 코스트의 합이 최소랑 같다면 => 최단 경로가 여러개 있는 것으로, true 일때 만 저장(default: false), 경로 코스트의 합이 최소라면 => true, false 상관 없이 저..
그래프와 순회. [2667], [1012]
[1. 문제 설명] NxN 크기의 배열에서 아래,위로 인접한 집들을 하나의 단지로 묶을 수 있을 때, 전체 단지의 개수와 각 단지에 속한 집들의 개수를 오름차순으로 출력 (대각선으로 인접한 것은 취급하지 않는다.) [2. 풀이 접근] 인접한 집으로 이동 할 수 있다는 점에서 그래프 개념으로 접근할 수 있다. 어떤 위치에서 이동할 수 있는 방향은 상,하,좌,우 4가지가 되므로, 각 경우에 대해서 dfs 를 수행 해 볼수 있다. 그러나, 좌표를 움직여야 하므로, 좌표가 NxN 배열을 넘어 선 경우, 이미 방문한 좌표, 좌표에 해당하는 값이 0인 경우는 무시해야 한다. 또한 작성 한 dfs 함수는 최종적으로 하나의 단지의 포함 된 집의 개수를 반환하는데, 기저 사례를 통과한 경우 최소 하나의 집이 있음이 보장..