his130   6년 전

기본적인 로직은 BFS를 기반으로 했습니다.

이중 for문을 통해서, 벽 하나를 탐색하고, 벽을 길로 바꾼후 BFS를 수행했습니다.

first 와 i==0 인 부분은, 벽을 부시지 않고 탐색하는 방식을 하기위해 예외로 처리했습니다.

단순히 BFS는 시간초과가 발생할 것 같아서,

종만북을 보고 공부한대로,,양방향 탐색을 통한 BFS를 수행했습니다.

1,1 에서는 +1 씩 증가하면서, n,m 에서는 -1씩 증가하면서, 중간에 만나는 지점에서 

절대값의 합을 구했습니다. 그리고 그 중에 최솟값을 구하는 방식으로 문제를 풀었습니다..

양방향 탐색이 이 문제에서는 잘 맞지 않는걸까요?.. 

양방향 탐색이 시간을 줄이는데 도움이 별로 없는걸까요? 제가 못짠걸까요..

doju   6년 전

기본적인 접근이 아주 비효율적입니다. 1000×1000 공간에 (1, 1000)부터 (1000, 1)까지 1000개의 벽이 늘어서 있는 경우를 생각해 보세요.

댓글을 작성하려면 로그인해야 합니다.