URAL 1022 Genealogical Tree
2013-11-22 13:04
351 查看
拓扑排序
#include <iostream> using namespace std; #include <vector> #include <memory.h> int n; int topology[120][120]; vector<int> result; bool zoro_out_degree(int index) { // bool flag = true; for (int i = 1;i <= n; i++) { if (topology[index][i]==1) { //flag = false; return false; } } return true; } void delete_out_degree(int index) { for (int i = 1; i <= n; i++) topology[i][index]=0; } bool is_visited(int index) { for (int i = 0; i < result.size(); i++) { if (result[i]==index) return true; } return false; } int main() { int i; int tmp; while (cin >> n) { result.clear(); for (i=1;i<=n;i++) { cin >> tmp; while (tmp!=0) { topology[i][tmp]=1; cin >> tmp; } } while (result.size() < n) { for (i=1;i<=n;i++) { if (zoro_out_degree(i)==true&&is_visited(i)==false) { result.push_back(i); delete_out_degree(i); } } } for (i=result.size()-1;i>0;i--) cout << result[i] << " "; cout << result[0] << endl; } return 0; }
相关文章推荐
- URAL 1022 Genealogical Tree (DFS)
- ural 1022. Genealogical Tree 拓扑排序
- ural 1022. Genealogical Tree Topological sort
- URAL 1022 Genealogical Tree (拓扑排序)
- Ural1022-Genealogical Tree
- 【基础拓扑排序】poj 2376/ural 1022
- ural 1022 Genealogical Tree
- ural 1022 Genealogical Tree
- URAL 1022. Genealogical Tree
- 面相对象的topSort和递推【ural1022/ural1017】
- URAL - 1022 - Genealogical Tree(拓扑排序)
- [Ural1022]Genealogical Tree
- Ural 1022 拓扑排序
- URAL 1022 Genealogical Tree
- ural 1022. Genealogical Tree
- URAL 1022. Genealogical tree
- URAL1022(拓扑排序)
- Ural 1022 Genealogical Tree
- ural 1022. Genealogical Tree 拓扑排序
- URAL 1022 拓扑排序