【例题 6-7 UVA - 122 】Trees on the level
2017-10-20 19:53
417 查看
【链接】 我是链接,点我呀:)
【题意】
在这里输入题意
【题解】
二叉树的话,直接用数组存就好了。
写个bfs记录一下答案。
【代码】
#include <bits/stdc++.h> using namespace std; const int N = 300; string s; int g[N+10][3],cnt; vector <int> ans; bool bfs(){ queue <int> dl; dl.push(0); while (!dl.empty()){ int x = dl.front(); dl.pop(); if (!g[x][2]) return false; ans.push_back(g[x][2]); for (int i = 0;i < 2;i++) if (g[x][i]) dl.push(g[x][i]); } return true; } int main(){ // freopen("rush.txt","r",stdin); while (cin >> s){ ans.clear(); memset(g,0,sizeof g); cnt = 0; bool ok = true; while (!(s[0]=='(' && s[1]==')')){ int len = s.size(); bool root = false; for (int i = 0;i < len;i++) if (s[i]=='(' || s[i]==')' || s[i]==',') { if (s[i]==',' && i+1<len && s[i+1]==')') root = true; s[i]=' '; } stringstream ss(s); int x; ss >> x >> s; if (root) s = ""; int now = 0; for (int i = 0;i < (int) s.size();i++){ if (s[i]=='L'){ if (!g[now][0]) g[now][0] = ++cnt; now = g[now][0]; }else{ if (!g[now][1]) g[now][1] = ++cnt; now = g[now][1]; } } if (g[now][2]==0) g[now][2] = x; else{ ok = false; } cin >> s; } if (!ok || !bfs()){ puts("not complete"); }else{ for (int i = 0;i < (int) ans.size();i++){ printf("%d",ans[i]); if (i==(int)ans.size()-1){ puts(""); }else putchar(' '); } } } return 0; }
相关文章推荐
- 例题6-7 二叉树的层次遍历 UVa 122 Trees on the level
- 算法竞赛入门经典第六章例题6-7 Trees on the level UVA - 122
- 例题6-7 UVa122 Trees on the level(树&&队列BFS&&sscanf字符串转整数)
- 例题6-7 UVA 122 - Trees on the level 树的层次遍历
- 例题6-7 树的层次遍历(Trees on the level, Duke 1993, UVa 122)
- uva 122 trees on the level——yhx
- Trees on the level(UVA122,二叉树的建立)
- uva 122 Trees on the level 二叉树的层次遍历(bfs)
- Trees on the level UVA - 122 复习二叉树建立过程,bfs,queue,strchr,sscanf的使用。
- uva 122 - Trees on the level(一棵看着书都写不利索的树……)
- UVA 122 Trees on the level
- UVA 122 Trees on the level 二叉树
- UVA-122-Trees on the level
- UVa Problem 122 - Trees on the level
- UVa 122 - Trees on the level
- Uva 122 Trees on the level
- Uva 122 Trees on the level
- (二叉树建树 先序遍历)UVA_122 Trees on the level
- UVA - 122 Trees on the level
- UVA122 Trees on the level