입력으로 들어온 체스판에 대하여 8X8크기의 체스판이 될 수 있는 경우를 하나하나 다 조사를 한 뒤 다시 칠해야 할 칸만 배열에 모두 담고 최소값을 출력한다.
import sys
y_axis, x_axis = map(int,input().split())
graph = [[0]*x_axis for _ in range(y_axis)]
visited = [[False]*x_axis for _ in range(y_axis)]
result = []
for y in range(y_axis):
p = sys.stdin.readline()
for x in range(x_axis):
graph[y][x] = p[x]
for i in range(y_axis-7):
for j in range(x_axis-7):
black = 0
white = 0
for y in range(i,i+8):
for x in range(j,j+8):
if (x+y)%2 == 0:
if graph[y][x] != 'B':
black += 1
if graph[y][x] != 'W':
white += 1
else:
if graph[y][x] != 'W':
black += 1
if graph[y][x] != 'B':
white += 1
result.append(black)
result.append(white)
print(min(result))
'백준' 카테고리의 다른 글
요세푸스 문제 0 - 11866번 (0) | 2022.10.10 |
---|---|
좌표 정렬하기 - 11650번 (0) | 2022.10.10 |
나이순 정렬 - 10814번 (0) | 2022.10.09 |
영화감독 숌 - 1436번 (0) | 2022.10.05 |
적록색약 - 10026번 (0) | 2022.10.04 |
댓글