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

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

지뢰찾기

면접 대비

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

요약
2행 N열 격자에서 첫째 행 숫자 단서와 일치하는 둘째 행 지뢰 배치 중 표시된 지뢰를 포함한 최대 개수를 구합니다.
난이도

보통10점 중 5점

유형
백트래킹, 완전 탐색
정답자
아직 제출이 없습니다

문제

지뢰찾기는 2×N2 \times N 배열에 숨어 있는 지뢰를 찾는 게임이다. 칸에 적힌 숫자는 그 칸과 가로, 세로, 대각선으로 맞닿은 칸에 지뢰가 몇 개 있는지를 뜻한다. 지뢰가 있다고 확정된 칸은 *로, 아직 열지 않은 칸은 #으로 표시한다. 첫째 줄에는 숫자만, 둘째 줄에는 *와 #만 나타나고 지뢰는 둘째 줄에만 있다.

12110
##*##

위 2×52 \times 5 배열에는 지뢰가 두 개 있다. 하나는 둘째 줄의 첫 칸에 숨어 있고, 다른 하나는 이미 드러난 가운데 칸이다.

2×N2 \times N 배열이 주어지면 배열에 있는 지뢰의 개수를 *로 표시된 지뢰까지 포함해서 세는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 TT (1≤T≤101 \le T \le 10)가 주어진다. 각 테스트 케이스의 첫째 줄에는 배열의 크기 NN (1≤N≤1001 \le N \le 100)이 주어지고, 이어지는 두 줄에 배열이 주어진다. 앞 줄은 숫자로만, 뒤 줄은 *와 #으로만 이루어지며 두 줄 모두 사이에 공백이 없다. 입력으로는 지뢰를 실제로 놓을 수 있는 올바른 값만 주어진다.

출력

각 테스트 케이스마다 배열에 있는 지뢰의 개수를 한 줄에 하나씩 출력한다. 지뢰의 개수가 여럿 가능하면 그중 최댓값을 출력한다.

예제2

  1. 예제 1

    입력
    2
    5
    11122
    ####*
    5
    23321
    #####
    
    예상 출력
    3
    4
    
  2. 예제 2

    입력
    1
    5
    12110
    ##*##
    
    예상 출력
    2