[BOJ][Python][실5][1018] 체스판 다시 칠하기
문제 링크
첫 번째 풀이
정답코드
n이 작아서 $O(n^2)$으로 진행해도 문제 없습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import sys
from math import pi, sqrt
from collections import deque
# sys.stdin = open("input.txt", 'r')
n, m = map(int, input().split())
for _ in range(n):
arr.append(list(input()))
ans = 1e9
for i in range(0, n - 7):
for j in range(0, m - 7):
for target in ['W', 'B']:
cnt = 0
for r in range(8):
for c in range(8):
if (i + j + r + c) % 2 == 0 and arr[i + r][j + c] != target:
cnt += 1
elif (i + j + r + c) % 2 == 1 and arr[i + r][j + c] == target:
cnt += 1
ans = min(ans, cnt)
print(ans)
Success Notice: 수고하셨습니다.
Leave a comment