문제 링크: https://www.acmicpc.net/problem/1080
백준 알고리즘 중급 1/3 710에서 4번째 - 1080번 행렬을 풀어보았다.
풀이: https://jokerldg.github.io/algorithm/2021/03/14/matrix.html
C++
Python
def reverse(x, y):
for i in range(x, x+3):
for j in range(y, y+3):
A[i][j] = 1 - A[i][j]
def check():
for i in range(N):
for j in range(M):
if A[i][j] != B[i][j]:
return False
return True
N, M = map(int, input().split())
A = [list(map(int,list(input()))) for _ in range(N)]
B = [list(map(int,list(input()))) for _ in range(N)]
count = 0
for i in range(N-2):
for j in range(M-2):
if A[i][j] != B[i][j]:
reverse(i, j)
count += 1
if check():
print(count)
else:
print("-1")
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
전구와 스위치 풀이 (0) | 2023.03.04 |
---|---|
ATM 풀이 (0) | 2023.03.04 |
회의실 배정 풀이 (1) | 2023.03.04 |
동전 0 풀이 (0) | 2023.03.04 |
4연산 풀이 (0) | 2023.03.04 |