알고리즘/baekjoon(boj)

[platinum5][풀이,해설 안봄] 14451 안개 낀 스피드러너

끄응끄응 2026. 2. 22. 22:18

https://www.acmicpc.net/problem/14451

아이디어가 재미있는 bfs 문제였다.

초기조건이 위, , 오른쪽인 두 상태에서 시작해서 같은 커맨드들을 거쳐 둘다 오른쪽 위로 가장 빠르게 갈 수 있는 방법을 찾는 것이다.

 초기에 위, 오른쪽일 때를 따로 분리해 case1 , case2 라 하면,  case1이 먼저 도착하면 case1은 더이상 움직이지 않고, case2만 움직이도록 하면 된다.

bfs 에서 방문배열은 visit[case1 의 좌표][case1방향][case2의 좌표][case2 방향] 으로 설정하였다. 각 상황에서 오른쪽, 왼쪽 회전, 직진 세가지를 모두 진행시켜 다음 상태를 큐에 넣는 식으로 진행하면 된다.

 

한개의 객체를 두개의 케이스로 나누고 각각의 상황을 모두 고려한 큐로 만든다는 것이 기발하고 재밌는 문제