본문 바로가기
백준 C++

백준 14503번 로봇 청소기 C++

by Srff5123 2025. 5. 6.
728x90

1. 문제 설명

로봇 청소기와 방의 상태가 주어질때, 청소하는 영역의 개수를 구하는 프로그램을 작성하는 문제이다.

 

로봇 청소기가 있는 방은 N x M 크기의 직사각형으로 나타내며

각각의 칸은 벽과 빈칸으로 이루어져있다.

청소기는 상하좌우 네방향으로 이동이 가능하며

 

만약 현재칸의 상하좌우칸 중 청소되지 않은 빈칸이 없다면

후진이 가능하고

뒤쪽칸이 벽이라면 작동을 멈춘다.

 

반대로 청소되지 않은 빈칸이 있다면

반시계 방향으로 90도 회전 후  바라보는 방향을 기준으로 앞쪽 칸이 청소되지 않은 칸이면 한칸 직진.

아니라면 다시 90도 회전하여 청소가 안된 칸을 찾아준다.

 

728x90

'백준 C++' 카테고리의 다른 글

백준 9095번 1,2,3 더하기 C++  (0) 2025.05.18
백준 14890 경사로 C++  (0) 2025.05.11
백준 13458번 시험 감독 C++  (0) 2025.05.06
백준 3190번 뱀 C++  (0) 2025.05.05
백준 1916번 최소비용 구하기 C++  (0) 2025.04.30