가오리의 코딩일기

[1992] 쿼드트리 본문

Python/백준

[1992] 쿼드트리

류경혜 2022. 8. 22. 02:00

n = int(input())
treeTable = [list(map(int, input())) for _ in range(n)]

def dfs(x, y, n):
    checkPoint = treeTable[x][y]
    for i in range(x, x+n):
        for j in range(y, y+n):
            if checkPoint != treeTable[i][j]:
                checkPoint = -1
                break
    if checkPoint == -1:
        print('(', end='')
        n //= 2
        dfs(x, y, n)
        dfs(x, y+n, n)
        dfs(x+n, y, n)
        dfs(x+n, y+n, n)
        print(')', end='')

    elif checkPoint == 1:
        print(1, end='')
    else:
        print(0, end='')

dfs(0, 0, n)

'Python > 백준' 카테고리의 다른 글

[1517] 버블 소트  (0) 2022.08.22
[4963] 섬의 개수  (0) 2022.08.22
[11729] 하노이 탑 이동 순서  (0) 2022.08.22
[11725] 트리의 부모 찾기  (0) 2022.08.22
[1780] 종이의 개수  (0) 2022.08.21