미로 탈출하기

면접 대비

시간 제한1초메모리 제한512 MB

요약
각 칸에 적힌 방향대로 이동할 때 격자 밖으로 나가게 되는 시작 칸의 수를 센다.
난이도

보통10점 중 5점

유형
그래프, DFS, 구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

크기가 N×M인 미로가 있고, 미로는 크기가 1×1인 칸으로 나누어져 있다. 미로의 각 칸에는 문자가 하나 적혀 있는데, 적혀 있는 문자에 따라서 다른 칸으로 이동할 수 있다.

어떤 칸 (r, c)에 적힌 문자가

  • U인 경우에는 (r-1, c)로 이동해야 한다.
  • R인 경우에는 (r, c+1)로 이동해야 한다.
  • D인 경우에는 (r+1, c)로 이동해야 한다.
  • L인 경우에는 (r, c-1)로 이동해야 한다.

미로에서 탈출 가능한 칸의 수를 계산해 보자. 탈출 가능한 칸이란, 그 칸에서 이동을 시작해서 칸에 적힌 대로 이동했을 때 미로의 경계 밖으로 이동하게 되는 칸을 의미한다.

입력

첫째 줄에 미로의 크기 N, M(3 ≤ N, M ≤ 500)이 주어진다. 둘째 줄부터 N개의 줄에는 미로의 각 칸에 적힌 문자가 주어진다.

출력

첫째 줄에 탈출 가능한 칸의 수를 출력한다.

예제4

  1. 예제 1

    입력
    3 3
    DDD
    DDD
    DDD
    
    예상 출력
    9
    
  2. 예제 2

    입력
    3 3
    DDR
    DLU
    LLL
    
    예상 출력
    9
    
  3. 예제 3

    입력
    3 3
    RRD
    RDD
    ULL
    
    예상 출력
    0
    
  4. 예제 4

    입력
    3 4
    RRDD
    RRDR
    DULU
    
    예상 출력
    4