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

#1.입력
N=int(input())
tree={}
for _ in range(N):
node,left,right=input().split()
tree[node]=[left,right]
#2.동작 함수
def preorder(node):
if node!='.':
print(node,end='')
preorder(tree[node][0])
preorder(tree[node][1])
def inorder(node):
if node!='.':
inorder(tree[node][0])
print(node,end='')
inorder(tree[node][1])
def postorder(node):
if node!='.':
postorder(tree[node][0])
postorder(tree[node][1])
print(node,end='')
#3.출력
preorder('A') #항상 A가 루트 노드
print()
inorder('A') #항상 A가 루트 노드
print()
postorder('A') #항상 A가 루트 노드'coding test > Baekjoon' 카테고리의 다른 글
| [Python] 2579번 계단 오르기 (0) | 2025.05.18 |
|---|---|
| [Python] 13913번 숨바꼭질 4 (0) | 2025.05.08 |
| [Python] 24444번 알고리즘 수업 - 너비 우선 탐색 1 (0) | 2025.04.23 |
| [Python] 11724번 연결 요소의 개수 (0) | 2025.04.23 |
| [Python] 2667번 단지번호붙이기 (0) | 2025.04.23 |