만드는 중입니다

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

흰 줄

면접 대비

시간 제한1.5초메모리 제한256 MB

요약
n×n 격자에서 k×k 정사각형을 정확히 한 번 흰색으로 칠할 때, 모두 흰색이 되는 행과 열의 최대 개수를 구합니다.
난이도

보통10점 중 5점

유형
누적 합, 행렬, 구현
정답자
아직 제출이 없습니다

문제

Gildong은 유명한 그림 프로그램 cfpaint를 샀다. cfpaint의 작업 화면은 nn개의 행과 nn개의 열로 이루어진 정사각형 격자다. 행은 위에서 아래로 1부터 nn까지, 열은 왼쪽에서 오른쪽으로 1부터 nn까지 번호가 매겨져 있다. 행 rr, 열 cc에 있는 칸은 (r,c)(r,c)로 표시한다. 칸의 색은 검은색 또는 흰색이다.

지우개 도구에는 정수 크기 kk (1≤k≤n1\le k\le n)가 있다. 지우개를 쓰려면 Gildong이 칸 (i,j)(i,j)를 클릭한다. 단, 1≤i,j≤n−k+11\le i,j\le n-k+1이다. i≤i′≤i+k−1i\le i'\le i+k-1이고 j≤j′≤j+k−1j\le j'\le j+k-1인 모든 칸 (i′,j′)(i',j')가 흰색이 된다. 즉, 왼쪽 위 모서리가 (i,j)(i,j)이고 한 변의 길이가 kk인 정사각형이 흰색으로 칠해진다.

흰 줄은 검은 칸이 하나도 없는 행 또는 열이다.

Gildong은 cfpaint를 한동안 써 왔기 때문에, 일부 칸(없을 수도 있고 전부일 수도 있다)이 지금 검은색이다. 지우개를 정확히 한 번 사용한 뒤 얻을 수 있는 흰 줄의 최대 개수를 구하라.

입력

첫 줄에 행과 열의 수이자 지우개의 크기인 정수 nn과 kk (1≤k≤n≤20001\le k\le n\le 2000)가 주어진다. 다음 nn개의 줄에는 각각 공백 없이 nn개의 문자가 주어진다. ii번째 줄의 jj번째 문자는 칸 (i,j)(i,j)를 나타내며, 검은 칸은 'B', 흰 칸은 'W'이다.

출력

지우개를 정확히 한 번 사용한 뒤 얻을 수 있는 흰 줄 개수의 최댓값을 정수 하나로 출력한다.

힌트

첫 번째 예제에서 Gildong은 칸 (2,2)(2,2)를 클릭할 수 있다. 그러면 화면은 다음과 같이 바뀐다.

BWWW
WWWW
WWWW
WWWB

흰 줄은 네 개다. 2행과 3행, 2열과 3열이다.

두 번째 예제에서는 칸 (2,3)(2,3)을 클릭하면 2행이 흰 줄이 된다.

세 번째 예제에서는 칸 (3,2)(3,2)를 클릭하면 2열과 5행이 모두 흰 줄이 된다.

예제5

  1. 예제 1

    입력
    4 2
    BWWW
    WBBW
    WBBW
    WWWB
    
    예상 출력
    4
    
  2. 예제 2

    입력
    3 1
    BWB
    WWB
    BWB
    
    예상 출력
    2
    
  3. 예제 3

    입력
    5 3
    BWBBB
    BWBBB
    BBBBB
    BBBBB
    WBBBW
    
    예상 출력
    2
    
  4. 예제 4

    입력
    2 2
    BW
    WB
    
    예상 출력
    4
    
  5. 예제 5

    입력
    2 1
    WW
    WW
    
    예상 출력
    4