백준 :: 행렬 <1080번>

혜 콩·2022년 7월 19일
0

알고리즘

목록 보기
37/61

> 문제 <

https://www.acmicpc.net/problem/1080

> 풀이 <

> 코드 <

# 행렬 (clone)

N, M  = map(int, input().split())
A, B = [], []
for _ in range(N):
    A.append(list(map(int, input())))
for _ in range(N):
    B.append(list(map(int, input())))

def convert(i, j):
    for x in range(i, i+3):
        for y in range(j, j+3):
            if A[x][y] == 0:    A[x][y] = 1
            else:   A[x][y] = 0

cnt = 0
if N < 3 or M < 3 and A != B:         # 예외
    cnt = -1
else:
    for i in range(N-2):
        for j in range(M-2):
            if A[i][j] != B[i][j]:
                convert(i, j)
                cnt += 1
if cnt != -1:
    if A != B:
        cnt = -1

print(cnt)
profile
배우고 싶은게 많은 개발자📚

0개의 댓글