题目描述
若有向图中存在一个顶点v,从v可以通过路径到达图中其他所有顶点,那么称v为该有向图的根。假设图G采用邻接矩阵存储,求有向图的所有根。
输入
第一行为一个整数n,表示顶点的个数(顶点编号为0到n-1),接下来是为一个n*n大小的整数矩阵,表示图的邻接关系。
输出
有向图的所有根。
样例输入
5
0 1 0 0 0
0 0 1 1 0
0 0 0 1 0
1 0 0 0 1
1 0 0 0 0
样例输出
01234
参考程序
#include<stdio.h>
int main()
{
int n;
scanf("%d", &n);
int a[n][n], b[n]={0};
for(int i=0; i<n; i++)
{
b[i]=0;
for(int j=0; j<n; j++)
scanf("%d", &a[i][j]);
}
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
if(a[i][j]!=0)
b[i]=1;
}
if(b[i]==1)
printf("%d", i);
}
return 0;
}
注意
该程序仅供学习参考!