트리플렛

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

요약
격자에 놓인 문자들 중에서 세 점이 일직선 위에 있는 조합의 개수를 구하는 문제입니다.
난이도

보통10점 중 5점

유형
기하, 조합론, 완전 탐색
정답자
아직 제출이 없습니다

문제

N x N 격자의 일부 칸에 서로 다른 알파벳 대문자가 적혀 있다. 빈 칸은 .로 표시된다.

세 글자를 고른 뒤, 세 칸의 중심이 한 직선 위에 있으면 그 세 글자는 트리플렛을 이룬다. 네 글자 이상이 같은 직선 위에 있을 때도, 그중 세 글자를 고르는 모든 방법을 각각 하나의 트리플렛으로 센다.

격자의 상태가 주어졌을 때 트리플렛의 개수를 구하시오.

입력

첫째 줄에 격자의 크기 N이 주어진다. (3 <= N <= 100)

다음 N개 줄에는 격자의 상태가 주어진다. 알파벳 대문자가 적힌 칸은 해당 문자로, 빈 칸은 .로 주어진다. 같은 알파벳 대문자는 두 칸 이상에 나타나지 않는다.

출력

트리플렛의 개수를 출력한다.

예제3

  1. 예제 1

    입력
    4
    ...D
    ..C.
    .B..
    A...
    
    예상 출력
    4
    
  2. 예제 2

    입력
    5
    ..T..
    A....
    .FE.R
    ....X
    S....
    
    예상 출력
    3
    
  3. 예제 3

    입력
    10
    ....AB....
    ..C....D..
    .E......F.
    ...G..H...
    I........J
    K........L
    ...M..N...
    .O......P.
    ..Q....R..
    ....ST....
    
    예상 출력
    0