
[Java] 백준 2206번 벽 부수고 이동하기 풀이
·
알고리즘/BFS, DFS
✅문제 ✅문제 풀이 시간 복잡도시간제한이 2초 이기 때문에 어림 잡아 코드가 2억 번 안에 프로그램이 끝나야합니다.최단 경로를 구하는 문제이기 때문에 BFS를 사용하기 때문에 약 1000 * 1000 = 1,000,000번 코드가 실행되고벽을 부시냐 안 부시냐를 나눠서 계산하기 때문에 총 약 2,000,000번 실행되기 때문에 BFS 알고리즘을 사용하면 충분히 시간 안에 문제를 처리할 수 있습니다. 공간복잡도192mb가 공간 제한입니다. 1.2억개의 배열을 생성할 때 512mb가 사용되기 때문에 러프하게 잡아 30,000,000개의 배열을 사용할 수 있습니다. 저희는 BFS와 벽을 안부시냐 부시냐를 체크해야되기 때문에 최대 1000 * 1000 * 2 = 2,000,000개의 배열을 사용하므로 공간 제한..