백준. 1018번. 체스판 다시 칠하기 파이썬 풀이
문제링크 https://www.acmicpc.net/problem/1018
n, m = map(int, input().split())
array = []
result = []
for _ in range(n):
array.append(input())
for i in range(n-7):
for j in range(m-7):
start_B = 0 # 첫 문자 B로 시작하는 경우
start_W = 0 # 첫 문자 W로 시작하는 경우
for k in range(i, i+8):
for h in range(j, j+8):
if (k+h) % 2 == 0:
if array[k][h] != 'B':
start_B += 1
if array[k][h] != 'W':
start_W += 1
else:
if array[k][h] != 'B':
start_W += 1
if array[k][h] != 'W':
start_B += 1
result.append(start_W)
result.append(start_B)
print(min(result))