Skip to content

Conversation

@0224LJH
Copy link
Contributor

@0224LJH 0224LJH commented Sep 9, 2025

🧷 문제 링크

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

🧭 풀이 시간

40분

👀 체감 난이도

✏️ 문제 설명

크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다.

'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 설치해야 하는 거울 개수의 최솟값을 구하는 프로그램을 작성하시오. 레이저로 통신한다는 것은 두 칸을 레이저로 연결할 수 있음을 의미한다.

레이저는 C에서만 발사할 수 있고, 빈 칸에 거울('/', '')을 설치해서 방향을 90도 회전시킬 수 있다.

아래 그림은 H = 8, W = 7인 경우이고, 빈 칸은 '.', 벽은 '*'로 나타냈다. 왼쪽은 초기 상태, 오른쪽은 최소 개수의 거울을 사용해서 두 'C'를 연결한 것이다.

7 . . . . . . .         7 . . . . . . .
6 . . . . . . C         6 . . . . . /-C
5 . . . . . . *         5 . . . . . | *
4 * * * * * . *         4 * * * * * | *
3 . . . . * . .         3 . . . . * | .
2 . . . . * . .         2 . . . . * | .
1 . C . . * . .         1 . C . . * | .
0 . . . . . . .         0 . \-------/ .
  0 1 2 3 4 5 6           0 1 2 3 4 5 6

입력

🔍 풀이 방법

bfs를 진행하면 간단히 풀 수 있다. 단 테이블에 저장하는 것이 출발지점으로부터 얼마나 떨어져있냐가 아니라, 거울 최소 개수를 갱신하면서 진행하면 간단히 풀 수 있다,

⏳ 회고

@0224LJH 0224LJH added the success 👍 해설을 보지 않고 풀었을 때 label Sep 9, 2025
@ShinHeeEul ShinHeeEul merged commit 86b0b83 into main Sep 9, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

success 👍 해설을 보지 않고 풀었을 때

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants