중첩 점
우측 버튼을 눌러 기기를 연결해주세요.
문제 정보
중첩 점
보통
유형
프로그래밍
배점
100
참여자
414
정답률
96.6%
16
9

문제


한 변의 길이가 인 정사각형이 있다. 플레이어는 이 정사각형 위에 개의 반직선을 그린 뒤, 두 반직선이 교차하는 점의 수를 세려고 한다. 플레이어가 반직선을 그리는 과정은 아래와 같다.

  1. 반직선을 그리기 시작할 칸 를 정한다. 는 주어진 정사각형을  크기의 정사각형으로 나눴을 때, 번째 행의 번째 열에 해당하는 칸이다.
  2. 반직선을 그릴 방향 를 정한다. 방향은 상하좌우 중 하나이며, 항상 정사각형 테두리의 가로 혹은 세로와 평행하다.
  3. 반직선을 그린다. 반직선은 항상 시작 칸의 테두리에서부터 시작하며, 같은 칸을 지나는 평행한 직선이 서로 만나지 않도록 그린다.

아래 그림은 길이가 인 정사각형 위에 다음 세 개의 직선을 그린 그림이다.

  • , 오른쪽 / , 왼쪽 / , 위쪽


 칸과  칸을 지나는 두 개의 가로 반직선이 있지만, 두 반직선은 서로 평행하기 때문에 중첩 점이 생기지 않는다. 그러나  칸을 지나는 세로 반직선과 두 반직선은 교차하므로 결과적으로는 두 개의 중첩 점이 생긴다.

플레이어가 모든 반직선을 그린 뒤 생기는 중첩 점의 개수를 구해보자.


예제 설명


첫 번째 예제를 그림으로 나타내면 아래와 같이 여섯 개의 중첩 점이 생긴다.


입력


첫째 줄에 정사각형의 크기 과 그리려는 반직선의 개수 이 공백을 두고 주어진다.
다음 개의 줄에는 플레이어가 그을 반직선의 정보를 나타내는 가 공백을 두고 주어진다.  칸에서 시작해  방향으로 반직선을 긋는다는 의미이다.

  • 는 UDLR 의 네 문자 중 하나이다. 각각 상하좌우 방향을 의미한다.


출력


모든 반직선을 그렸을 때, 중첩 점의 개수를 출력하시오.

입/출력 예시
:
공백
:
줄 바꿈
:
예시 1
입력
35
21R
11D
23L
33U
22D
출력
6
예시 2
입력
33
22R
22L
12D
출력
2
⋇ 입출력 형식을 잘 지켜주세요
Q&A
누구나 질문하고 답변할 수 있는 Q&A입니다. 문제를 풀며 어려웠던 부분에 대해 질문해보세요.
이 문제에 관한 질문 (0)