만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

라그노

면접 대비

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

요약
8행 8열 오셀로 판에서 검은 돌 한 수로 뒤집을 수 있는 흰 돌의 최대 개수를 구합니다.
난이도

쉬움10점 중 3점

유형
시뮬레이션, 행렬, 완전 탐색
정답자
아직 제출이 없습니다

문제

라그노(리버시, 오델로라고도 부른다)는 흑과 백 두 명이 겨루는 보드 게임이다. 판은 8행 8열로 이루어진 정사각형이다.

한 번의 수에서 흑은 빈 칸 하나에 흑돌을 놓는다. 단, 새로 놓은 돌을 기준으로 여덟 방향(상, 하, 좌, 우, 그리고 네 대각선) 중 적어도 한 방향에서, 새로 놓은 돌과 기존의 다른 흑돌 사이가 한 개 이상의 백돌로만 빈틈없이 이어져 있어야 한다. 돌을 놓은 뒤에는, 이렇게 새로 놓은 흑돌과 기존 흑돌 사이에 낀 백돌이 (그런 방향마다) 모두 흑돌로 바뀐다.

주어진 판 상태에서, 흑이 한 번의 수로 뒤집을 수 있는 백돌의 최대 개수를 구하는 프로그램을 작성하시오.

입력

입력은 여덟 줄로 이루어지며, 각 줄은 정확히 여덟 개의 문자 '.', 'B', 'W'로 구성된다. '.'는 빈 칸, 'B'는 흑돌이 놓인 칸, 'W'는 백돌이 놓인 칸을 뜻한다.

출력

흑이 한 번의 수로 뒤집을 수 있는 백돌의 최대 개수를 출력한다. 놓을 수 있는 합법적인 수가 하나도 없으면 0을 출력한다.

예제3

  1. 예제 1

    입력
    ........
    ........
    ........
    ...BW...
    ...WB...
    ........
    ........
    ........
    
    예상 출력
    1
    
  2. 예제 2

    입력
    ........
    ........
    ...BB...
    ...B....
    ..BBW...
    ..WWW...
    ....WB..
    ........
    
    예상 출력
    2
    
  3. 예제 3

    입력
    ...B....
    ...W....
    .B.B.B..
    ..WWW...
    .BW.WB..
    ........
    ........
    ........
    
    예상 출력
    5