-코드
def sol(x, y, N):
number = arr[x][y]
for i in range(x, x + N):
for j in range(y, y + N):
if number != arr[i][j]:
for X in range(3):
for Y in range(3):
sol(x + X * (N // 3), y + Y * (N // 3), N // 3)
return
if number == -1:
result[0] += 1
elif number == 0:
result[1] += 1
else:
result[2] += 1
n = int(input())
arr = [list(map(int, input().split())) for _ in range(n)]
result = [0, 0, 0]
sol(0, 0, n)
print(result[0])
print(result[1])
print(result[2])
전에 했던 분할 정복과 비슷하여 기본 틀을 만들어 해결을 하려 했지만 3개로 나누는 과정에서 문제가 생겨서 값이 이상하게 나와서 여러 시도를 해보았지만 실패를 했습니다. 그래서 게시판을 찾아보니 for문으로 해결을 하는 방법이 있어서 직접 짜 봤으나 틀려서 해당 부분을 참고하 혀 해결을 해서 아쉬웠습니다.
'Beakjoon&프로그래머스 > 파이썬' 카테고리의 다른 글
[백준/파이썬] 1074번 Z (0) | 2022.01.19 |
---|---|
[백준/파이썬] 13580번 Andando no tempo (0) | 2022.01.19 |
[백준/파이썬] 20687번 Rulltrappa (0) | 2022.01.18 |
[백준/파이썬] 2630번 색종이 만들기 (0) | 2022.01.17 |
[백준/파이썬] 23375번 Arm Coordination (0) | 2022.01.17 |