算法训练 关联矩阵
【摘要】
问题描述
有一个n个结点m条边的有向图,请输出他的关联矩阵。
输入格式
第一行两个整数n、m,表示图中结点和边的数目。n<=100,m<=1000。 接下来m行,每行两个整数a、b,表示图中有(a,b)边。 注意图中可能含有重边,但不会有自环。
输出格式
输出该图的关联矩阵,注意请勿改变边...
问题描述
有一个n个结点m条边的有向图,请输出他的关联矩阵。
输入格式
第一行两个整数n、m,表示图中结点和边的数目。n<=100,m<=1000。
接下来m行,每行两个整数a、b,表示图中有(a,b)边。
注意图中可能含有重边,但不会有自环。
接下来m行,每行两个整数a、b,表示图中有(a,b)边。
注意图中可能含有重边,但不会有自环。
输出格式
输出该图的关联矩阵,注意请勿改变边和结点的顺序。
样例输入
59
1 2
3 1
1 5
2 5
2 3
2 3
3 2
4 3
5 4
1 2
3 1
1 5
2 5
2 3
2 3
3 2
4 3
5 4
样例输出
1 -11 0 0 0 0 0 0
-1 0 0 1 1 1 -1 0 0
0 1 0 0 -1 -1 1 -1 0
0 0 0 0 0 0 0 1 -1
0 0 -1 -1 0 0 0 0 1
-1 0 0 1 1 1 -1 0 0
0 1 0 0 -1 -1 1 -1 0
0 0 0 0 0 0 0 1 -1
0 0 -1 -1 0 0 0 0 1
-
import java.util.Scanner;
-
public class Main {
-
-
public static void main(String[] args) {
-
// TODO Auto-generated method stub
-
Scanner sc=new Scanner(System.in);
-
while(sc.hasNext()){
-
int n=sc.nextInt();
-
int m=sc.nextInt();
-
int a[][]=new int[n][m];
-
int fp=0,tp=0;
-
for(int i=0;i<m;i++){
-
fp=sc.nextInt();
-
tp=sc.nextInt();
-
a[fp-1][i]=1;
-
a[tp-1][i]=-1;
-
}
-
for(int i=0;i<n;i++){
-
for(int j=0;j<m;j++){
-
System.out.print(a[i][j]+" ");
-
}
-
System.out.println();
-
}
-
-
}
-
sc.close();
-
-
}
-
-
}
注:关于矩阵小编自学了一部分,复杂一点小编就有点蒙了,,
文章来源: czhenya.blog.csdn.net,作者:陈言必行,版权归原作者所有,如需转载,请联系作者。
原文链接:czhenya.blog.csdn.net/article/details/76091982
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)