728x90
분석
배열의 길이가 1이 될 때 까지 4개로 나눔 (재귀)
4개로 나누는 시작 좌표, 길이를 매개변수로 하는 함수 생성
풀이
def solution(arr):
answer = [0, 0]
def quad(r,c,n):
if len(arr) == 1:
answer[arr[r][c]] += 1
return
else:
tg = arr[r][c]
for i in range(n):
for j in range(n):
if arr[r+i][c+j] != tg:
n=n//2
quad(r, c, n)
quad(r, c+n, n)
quad(r+n, c, n)
quad(r+n, c+n, n)
return
answer[tg] += 1
quad(0, 0, len(arr))
return answer
월간코드챌린지
728x90