목록벽 부수고 이동하기 (2)
어흥
문제 링크: https://www.acmicpc.net/problem/16933 16933번: 벽 부수고 이동하기 3 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 1,000), K(1 ≤ K ≤ 10)이 주어진다. 다음 N개의 줄에 M개의 숫자로 맵이 주어진다. (1, 1)과 (N, M)은 항상 0이라고 가정하자. www.acmicpc.net 1. 주의할 점 - BFS를 잘못 사용할 경우 시간초과가 발생한다 - K의 값이 0~10이므로 Check[1000][1000][11]로 설정해야 한다 -> 11 대신 10을 사용할 경우 틀린다 - 낮의 경우에만 벽을 부술 수 있다 2. 구현 - 벽 부수고 이동하기 1이나 2와 비슷한 방법을 사용하지만, 낮과 밤의 구분을 추가한다 - 낮일 경우(Sun..
문제 링크: https://www.acmicpc.net/problem/14442 14442번: 벽 부수고 이동하기 2 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 1,000), K(1 ≤ K ≤ 10)이 주어진다. 다음 N개의 줄에 M개의 숫자로 맵이 주어진다. (1, 1)과 (N, M)은 항상 0이라고 가정하자. www.acmicpc.net 1. 주의할 점 - K의 값이 0~10이므로 방문 배열 Check[1000][1000][11]로 설정한다 - 출발지점도 포함이다 2. 구현 - 구조체를 이용하여 X좌표, Y좌표, 벽을 부순 횟수를 저장하는 Queue를 통해 BFS 탐색을 한다 - 4방향을 탐색하며, 벽이 아닌 경우 현재 벽을 부순 횟수로 이동하려는 지점을 방문한 적이 없다면 Queu..