알고리즘 공부/백준 문제풀이

[백준 python] 14503번 로봇 청소기

이현찬 2022. 8. 2. 22:45
728x90

문제 링크

 

14503번: 로봇 청소기

로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어

www.acmicpc.net

문제 설명

  • 벽(1)과 빈 공간(0)으로 이뤄진 2차원 array를 입력으로 받고 주어진 규칙에 따라 빈 영역을 탐색하는 문제

고민한 부분

  • 구현 할 때 청소를 마친 부분을 하나의 숫자로 채울 경우 디버깅 과정에서 청소 순서를 파악하기 어려웠음
    • line 24에서 clean_tag를 2로 선언하고 청소를 할 때마다 1씩 증가시켜 청소되는 순서를 파악할 수 있게 구현
  • 청소기가 회전하는 방향을 잘못 파악한 것을 늦게 알아채 오래 걸렸던 문제