아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

W키가 빠진 성원이

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

요약
위쪽 이동 W를 뺀 나머지 일곱 방향 키만으로 목적지 F에 도달할 수 있는 빈 칸의 개수를 구한다.
난이도

보통10점 중 7점

유형
BFS, 그래프, 구현
정답자
아직 제출이 없습니다

문제

성원이는 게임을 너무 열심히 한 나머지 키보드의 W키가 빠져버리게 되었다. 그럼에도 게임이 하고 싶었던 성원이는 W키 없이도 할 수 있는 게임을 찾아 나섰다. 그러다 한 게임을 찾았는데, 보통의 게임에서 WASD를 이용해 캐릭터를 움직이는 것과 달리, 이 게임에서는 Q, W, E, A, D, Z, X, C 키를 이용해 88방향으로 캐릭터를 움직일 수 있었다. 물론 성원이는 W키를 누르지 못하기 때문에 W키를 제외한 나머지 77개의 키만을 이용해 캐릭터를 움직일 수 있다. 각 키를 눌렀을 때 세부적인 이동 방식은 다음과 같다.

  • Q: 왼쪽 위 대각선으로 11칸 이동
  • W: 위쪽으로 11칸 이동
  • E: 오른쪽 위 대각선으로 11칸 이동
  • A: 왼쪽으로 11칸 이동
  • D: 오른쪽으로 11칸 이동
  • Z: 오른쪽 아래 대각선으로 11칸 이동
  • X: 아래쪽으로 11칸 이동
  • C: 왼쪽 아래 대각선으로 11칸 이동

이 게임은 N×NN\times N의 게임판 위에서 앞선 88방향(성원이의 경우 77방향)의 키 조작을 통해 목적지에 도달하는 것이 목표이다. 게임판은 빈 공간이 ".", 이동할 수 없는 공간인 벽이 "#", 목적지가 "F"로 주어진다. 그리고 게임을 시작하기 전에 빈 공간 중 어느 지점에 캐릭터를 둘 지 결정할 수 있다. 단, 벽이나 목적지 위에는 캐릭터를 둘 수 없다. 목적지는 항상 한 개 존재한다.

#.#
.#.
.#F

게임판이 위와 같이 주어졌다고 하면, 성원이는 맨 왼쪽 아래에 캐릭터를 두지만 않는다면 목적지에 도달할 수 있다. 성원이를 위해 목적지에 도달할 수 있도록 하는 시작 지점의 개수를 구해주자.

입력

첫 번째 줄에 정수 NN이 주어진다. (1≤N≤2000)(1 \le N \le 2000)

두 번째 줄부터 NN개의 줄에 걸쳐 게임판이 주어진다.

출력

첫 번째 줄에 성원이가 목적지에 도달할 수 있도록 하는 시작 지점의 개수를 출력한다.

예제2

  1. 예제 1

    입력
    3
    #.#
    .#.
    .#F
    
    예상 출력
    3
    
  2. 예제 2

    입력
    7
    ###F###
    ##.#.##
    #..#..#
    ##.#..#
    .#.###.
    ...##..
    .#.#...
    
    예상 출력
    15