본문 바로가기

BOJ/C++

[BOJ] 2151. 거울설치 + TC

*거울이 [\] [/] 이 두 방향으로 있다고 생각하고 풀어야 한다. 

처음에는 45도이기 때문에 [/] 만 생각하고 풀었다가 아니라는 것을 알게 됐다. 

 

*처음 [#] 좌표에서 출발해서 4방향 모두 큐에 넣는다. 

*각 방향으로 한 칸 앞으로 전진한 좌표가 거울이면 방향을 바꾸어서 큐에 넣고, 방향을 바꾸지 않는 상태로도 큐에 넣는다. 

이 좌표에 거울을 설치하지 않는 경우도 생각한다. 

 

3

...

*!#

#!!

 

이 예시를 보면 (1, 3)에서 출발해서 (3,1)로 가야하는데 남쪽 방향으로 (3,3)의 거울로 간 후, 방향을 한 번 바꾸면 바로 (3,1)에 접근가능하다. 

 

 

'BOJ > C++' 카테고리의 다른 글

[BOJ] 10799. 쇠막대기 (C)  (0) 2020.03.24
[BOJ] 1158. 요세푸스 문제 (C)  (0) 2020.03.24
[BOJ] 9376. 탈옥  (0) 2020.03.18
[BOJ] 12094. 2048(Hard)  (0) 2020.03.18
[BOJ] 16638. 괄호 추가하기2  (0) 2020.03.17