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

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

결정

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

요약
각 칸이 대각선 반쪽이나 전체 정사각형인 격자에서 변을 공유하는 어두운 영역의 연결 성분 수를 센다.
난이도

보통10점 중 5점

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

문제

그리 멀지 않은 어느 은하에서, 남자는 진짜 남자였고 여자는 진짜 여자였으며 알파 센타우리에서 온 작고 털이 복슬복슬한 생명체는 진짜로 알파 센타우리에서 온 작고 털이 복슬복슬한 생명체이던 시절, 고르스키(Gorsky) 박사라는 천문학자가 생명이 사는 작은 행성 하나를 발견했다. 처음의 흥분(그래, 우리는 혼자가 아니야!)이 가라앉은 뒤, 살아 있는 노벨 평화상 수상자들이 한자리에 모여 위원회를 꾸리고 그 행성을 침공하는 방안을 논의했다. 이 중요한 결정을 내리려면, 먼저 그 먼 행성에 도시가 몇 개나 있는지 알아야 한다.

안타깝게도 고르스키 박사가 가져온 사진의 화질은 상당히 나빴다. 직사각형 격자 위에서 각 칸은 비어 있거나(도시가 없음) 일부 또는 전체가 어둡다(도시 또는 도시의 일부가 있음). 두 어두운 부분이 공통의 변(edge)을 맞대고 있으면, 그 둘은 같은 도시에 속한다. 위원회는 이렇게 말했다. "도시의 개수를 세어 주게. 행운을 비네, 고르스키 박사."

도시가 세 개 있는 예시 지도는 아래와 같다.

도시가 3개인 예시 지도

입력

첫 번째 줄에는 테스트 케이스의 개수인 양의 정수 ZZ (Z≤20Z \le 20)가 주어진다. 이어서 ZZ개의 테스트 케이스가 주어진다.

각 테스트 케이스의 첫 번째 줄에는 사진의 크기를 나타내는 두 정수 nn과 mm (1≤n,m≤10001 \le n, m \le 1000)이 주어진다. 다음 nn개의 줄에는 각각 {A, B, C, D, E, F} 중의 문자 mm개가 주어진다. 각 문자는 하나의 칸을 나타내며, 칸은 정사각형이 하나의 대각선으로 두 개의 삼각형으로 나뉜 모양이다. 칸에서 어두운 영역은 다음과 같다.

문자칸에서 어두운 영역
A없음 (빈 칸)
B왼쪽 아래 삼각형
C왼쪽 위 삼각형
D오른쪽 위 삼각형
E오른쪽 아래 삼각형
F칸 전체

A부터 F까지의 칸 표기

어두운 삼각형은 직각을 이루는 두 변(칸의 두 변)을 완전히 덮으며, 대각선 변은 칸 내부에 있다. 두 어두운 부분은 상하좌우로 인접한 두 칸 사이의 격자선 전체를 따라 맞닿을 때에만 공통의 변을 가진다. 모서리(꼭짓점)에서만 닿는 칸들은 이어져 있지 않다.

출력

각 테스트 케이스마다 해당 지도에 있는 도시의 개수를 한 줄에 출력한다.

예제3

  1. 예제 1

    입력
    4
    1 2
    DD
    2 2
    FB
    DF
    2 3
    FAA
    AFB
    4 4
    AACB
    CAFD
    AFCE
    AACA
    
    예상 출력
    2
    1
    2
    6
    
  2. 예제 2

    입력
    2
    2 2
    AA
    AA
    3 3
    FFF
    FFF
    FFF
    
    예상 출력
    0
    1
    
  3. 예제 3

    입력
    6
    1 1
    A
    1 1
    B
    1 1
    C
    1 1
    D
    1 1
    E
    1 1
    F
    
    예상 출력
    0
    1
    1
    1
    1
    1