POJ 2367 (入门拓扑排序 )
2016-08-09 18:05
423 查看
POJ 2367
题意:知道一个数n, 然后n行,编号1到n, 每行输入几个数,每行以0结尾,输出一种符合要求的编号名次排序。
思路:入门题,理解 “ 度 ” 和 map[ ] [ ]的关系。
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define M 110
int main()
{
int n;
int map[M][M];
int ingreed[M];
int ans[M];
while(cin>>n && n != 0){
memset(map,0,sizeof(map));
memset(ingreed,0,sizeof(ingreed));
for(int i = 1;i <= n; i++){
int p;
while(cin>>p,p){
map[i][p] = 1;
ingreed[p]++;
}
}
int all = 0;
for(int i = 1;i <= n; i++)
for(int j = 1;j <= n; j++)
if(ingreed[j] == 0){
ans[all++] = j;
ingreed[j] = -1;
for(int k = 1;k <= n; k++)
if(map[j][k] == 1)
ingreed[k]--;
break;
}
for(int i = 0;i < all; i++)
printf("%d%c",ans[i],i == all - 1 ? '\n' : ' ');
}
return 0;
}
题意:知道一个数n, 然后n行,编号1到n, 每行输入几个数,每行以0结尾,输出一种符合要求的编号名次排序。
思路:入门题,理解 “ 度 ” 和 map[ ] [ ]的关系。
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define M 110
int main()
{
int n;
int map[M][M];
int ingreed[M];
int ans[M];
while(cin>>n && n != 0){
memset(map,0,sizeof(map));
memset(ingreed,0,sizeof(ingreed));
for(int i = 1;i <= n; i++){
int p;
while(cin>>p,p){
map[i][p] = 1;
ingreed[p]++;
}
}
int all = 0;
for(int i = 1;i <= n; i++)
for(int j = 1;j <= n; j++)
if(ingreed[j] == 0){
ans[all++] = j;
ingreed[j] = -1;
for(int k = 1;k <= n; k++)
if(map[j][k] == 1)
ingreed[k]--;
break;
}
for(int i = 0;i < all; i++)
printf("%d%c",ans[i],i == all - 1 ? '\n' : ' ');
}
return 0;
}
相关文章推荐
- poj 2367 Genealogical tree(拓扑排序入门)
- POJ 2367 Genealogical tree(拓扑排序入门题)
- 拓扑排序入门poj2367
- poj 2367 & poj 1094 分析&解题报告(拓扑排序入门)
- POJ 2367 Genealogical tree 拓扑排序入门
- POJ 2367 Genealogical tree(拓扑排序)
- POJ 2367 Genealogical tree 拓扑排序
- poj 2367 拓扑排序
- POJ2367 Genealogical tree (拓扑排序)
- POJ 1094 && ZOJ 1060 Sorting It All Out 【拓扑排序入门】
- POJ 2367 -- Genealogical tree【拓扑排序 && 水题】
- poj 2367 拓扑排序
- POJ 2367Genealogical tree 简单拓扑排序
- POJ 2367 Genealogical tree 拓扑排序
- POJ 2367 拓扑排序
- poj 2367 Genealogical tree (拓扑排序)
- POJ 2367 Genealogical tree【拓扑排序】
- poj 2367 Genealogical tree【拓扑排序基础题】
- POJ 2367 Genealogical tree【拓扑排序】
- Poj 2367 Genealogical tree(拓扑排序)