[백준/파이썬] 1991번

민정·2023년 4월 26일
0

[백준/파이썬]

목록 보기
134/245
post-thumbnail

📍백준 1991번 문제

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

코드

import sys
input = sys.stdin.readline

n = int(input())
tree = {}

for _ in range(n):
    n, l, r = sys.stdin.readline().strip().split()
    tree[n] = [l, r]


def inorder(node):
    if node != '.':
        inorder(tree[node][0])
        print(node, end='')
        inorder(tree[node][1])


def preorder(node):
    if node != '.':
        print(node, end='')
        preorder(tree[node][0])
        preorder(tree[node][1])


def postorder(node):
    if node != '.':
        postorder(tree[node][0])
        postorder(tree[node][1])
        print(node, end='')


preorder('A')
print()
inorder('A')
print()
postorder('A')

풀이

딕셔너리를 이용해서 문제를 풀었다.
tree[parent_node] = [left_node, right_node]로 입력받아 전위,중위,후위 순회에 맞게 출력했다.

profile
パㅔバ6ㅇr 덤벼ㄹΓ :-0

0개의 댓글