๋ฌธ์
์ฝ๋
#include <iostream>
using namespace std;
int N;
int tree[52][2];
void preorder(int curr){
if(curr==-1) return;
cout<<(char)(curr+65);
preorder(tree[curr][0]);
preorder(tree[curr][1]);
}
void inorder(int curr){
if(curr==-1) return;
inorder(tree[curr][0]);
cout<<(char)(curr+65);
inorder(tree[curr][1]);
}
void postorder(int curr){
if(curr==-1) return;
postorder(tree[curr][0]);
postorder(tree[curr][1]);
cout<<(char)(curr+65);
}
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
cin>>N;
while(N--){
char a,b,c; cin>>a>>b>>c;
a = a - 65;
if(b =='.') tree[a][0]= -1;
else tree[a][0]=b-65;
if(c =='.') tree[a][1]= -1;
else tree[a][1]=c-65;
}
preorder(0); //์ ์ ์ํ
cout<<'\n';
inorder(0); //์ค์ ์ํ
cout<<'\n';
postorder(0); //ํ์ ์ํ
}
ํ์ด
๊ฐ ๋ ธ๋์ ์ด๋ฆ์ A๋ถํฐ ์ฐจ๋ก๋๋ก ์ํ๋ฒณ ๋๋ฌธ์๋ก ์ฃผ์ด์ง๋๋ค. ๋ฐ๋ผ์ int๋ฐฐ์ด์ ๋ด๊ธฐ ์ํด A์ ์์คํค์ฝ๋์ธ 65๋ฅผ ๋นผ์ฃผ์ด ์ ์๋ก ๋ง๋ค์ด ์ฝ์ ํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ฐ๊ฐ ์ ์ ์ํ, ์ค์ ์ํ, ํ์ ์ํ์ ๋ํ ๊ฐ๋ ์ ์๋์ ๊ฐ์ต๋๋ค.
- ์ ์: ํ์ฌ ๋ ธ๋ ์ถ๋ ฅ -> ์ผ์ชฝ ๋ ธ๋ ์ํ -> ์ค๋ฅธ์ชฝ ๋ ธ๋ ์ํ
- ์ค์: ์ผ์ชฝ ๋ ธ๋ ์ํ -> ํ์ฌ ๋ ธ๋ ์ถ๋ ฅ -> ์ค๋ฅธ์ชฝ ๋ ธ๋ ์ํ
- ํ์: ์ผ์ชฝ ๋ ธ๋ ์ํ -> ์ค๋ฅธ์ชฝ ๋ ธ๋ ์ํ -> ํ์ฌ ๋ ธ๋ ์ถ๋ ฅ
๊ทธ๋ ๊ธฐ์ ์ ์ ํ๊ฒ print๋ฌธ ์์น๋ฅผ ๋ฃ์ด์ฃผ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค.
'Algorithm ๐ง๐ปโ๐ป > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค,c++] 1935๋ฒ - ํ์ ํ๊ธฐ์2 (0) | 2022.03.10 |
---|---|
[๋ฐฑ์ค,c++] 23977๋ฒ - To Find Password (0) | 2022.03.10 |
[๋ฐฑ์ค,c++] 1874๋ฒ - ์คํ ์์ด (0) | 2022.03.09 |
[๋ฐฑ์ค,c++] 1240๋ฒ - ๋ ธ๋์ฌ์ด์ ๊ฑฐ๋ฆฌ (0) | 2022.03.08 |
[๋ฐฑ์ค,c++] 21918๋ฒ - ์ ๊ตฌ (0) | 2022.03.01 |
[๋ฐฑ์ค,c++] 14888๋ฒ - ์ฐ์ฐ์ ๋ผ์๋ฃ๊ธฐ (0) | 2022.02.17 |
๋๊ธ