[백준] 9934번 완전 이진 트리 - 파이썬/트리

JinUk Lee·2023년 5월 30일
0

백준 알고리즘

목록 보기
61/78

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


K = int(input())

bn = list(map(int,input().split()))

graph = []

for i in range(K):

    A = bn[::2]

    graph.append(A)

    bn = bn[1::2]


for i in range(K-1,-1,-1):

    print(*graph[i])

1 6 4 3 5 2 7 이런 순서로 입력되었을때,

가장 아래층부터 채워나간다.

트리에서 가장 아래층은 입력 순서의 홀수번째 수이다.

즉, 가장 아래층은 1 4 5 7이다.

한 층을 채우고나면 홀수번째 숫자들을 다 지워준다.

그러면 6 3 2 가 남는데, 여기서 위의 과정을 반복하면 된다.

홀수번째 숫자인 6 2를 새로운 층으로 쌓고 3 으로 다시 과정을 반복한다.

profile
개발자 지망생

0개의 댓글