728x90
반응형
https://www.acmicpc.net/problem/1991
1991번: 트리 순회
첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파
www.acmicpc.net
#include <iostream>
using namespace std;
pair<int, int> edge[26];
void pre(char cur) {
if (cur == '.') return;
cout << cur;
pre(edge[cur - 'A'].first);
pre(edge[cur - 'A'].second);
}
void in(char cur) {
if (cur == '.') return;
in(edge[cur - 'A'].first);
cout << cur;
in(edge[cur - 'A'].second);
}
void post(char cur) {
if (cur == '.') return;
post(edge[cur - 'A'].first);
post(edge[cur - 'A'].second);
cout << cur;
}
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
char node, left, right;
cin >> node >> left >> right;
edge[node - 'A'] = { left, right };
}
pre('A');
cout << '\n';
in('A');
cout << '\n';
post('A');
return 0;
}
728x90
반응형
'Algorithm > BAEKJOON' 카테고리의 다른 글
[BOJ] 2178번 미로 탐색 (C++) (0) | 2021.11.07 |
---|---|
[BOJ] 11279번 최대 힙 (C++) (0) | 2021.11.07 |
[BOJ] 21736번 헌내기는 친구가 필요해 (C++) (0) | 2021.11.05 |
[BOJ] 12865번 평범한 배낭 (C++) (0) | 2021.11.05 |
[BOJ] 1966번 프린터 큐 (C++) (0) | 2021.11.03 |