[백준 2178] 미로 탐색
https://acmicpc.net/problem/2178 해설 이번 문제인 미로 찾기는 전에 소개한 백준 7562 나이트의 이동( 참고 : https://far-simple.tistory.com/10 ) 문제와 동일해서 설명은 생략하겠다. 다만, di 배열과 dj 배열을 잡을 때만 조심해주면 된다. 7562는 색칠 된 부분이 매우 많고 범위도 컸지만, 이번에는 아래 소스코드와 같이 위, 오른쪽, 아래, 왼쪽만 di, dj 배열로 잡아주면 끝난다. int di[4] = {-1,0,1,0}; int dj[4] = {0,1,0,-1}; ˙˙˙ 소스코드 #include #include int di[4] = {-1,0,1,0}; int dj[4] = {0,1,0,-1}; int arr[101][101]; boo..
2020. 3. 21.
[백준 7562] 나이트의 이동
https://www.acmicpc.net/problem/7562 해설 일단, 그림만 봐도 BFS 라는 것을 짐작할 수있다. 색칠 된 부분의 좌표를 두 배열에 저장해놓고 BFS를 돌리면 풀 수있다. 현재 내 좌표를 0, 0으로 가정하고 나머지 색칠 된 부분의 좌표를 시계 방향으로 적어보겠다. int di[8] = {-2, -1, 1, 2, 2, 1, -1, -2}; int dj[8] = {1, 2, 2, 1, -1, -2, -2, -1}; 이 좌표를 가지고 현재 x와 y가 갈 수있는 좌표와 움직인 횟수를 큐에 넣어주고 업데이트 하면서 x와 y가 목적지에 도착하면 while을 빠져나와 count 한 값을 출력해주면 된다. ˙˙˙ 소스코드 #include #include using namespace std;..
2020. 3. 20.