0
点赞
收藏
分享

微信扫一扫

SWUST OJ 1060: 无向图的最大度计算

西曲风 2022-01-09 阅读 81

题目描述

假设无向图G采用邻接矩阵存储,求出图G最大度值并输出顶点的编号(有多个结果的都要输出)。

输入

第一行为一个整数n,表示顶点的个数(顶点编号为0到n-1)。接下来是为一个n*n大小的整数矩阵,表示图的邻接关系。数字为0表示不邻接,1表示邻接。

输出

图G中度的最大值以及顶点编号。第一行表示最大度值,第二行表示所有顶点的编号。

样例输入

5
0 1 0 1 1
1 0 1 1 1
0 1 0 1 1
1 1 1 0 1
1 1 1 1 0

样例输出

4
134

参考程序

#include<stdio.h>
void CreateMap(int n,int edges[100][100])//创建邻接矩阵 
{
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<n;j++)
		scanf("%d",&edges[i][j]);
	}
}
int main()
{
	int edges[100][100];
	int n;
	scanf("%d",&n);
	CreateMap(n,edges);
	int max=0;
	for(int i=0;i<n;i++)//查找最大度的值 
	{
		int sum=0;
		for(int j=0;j<n;j++)
		{
			sum+=edges[i][j];
		}
		if(sum>max) max=sum;
	}
	printf("%d\n",max);
	for(int i=0;i<n;i++)//输出为最大度的序号 
	{
		int sum=0;
		for(int j=0;j<n;j++)
		{
			sum+=edges[i][j];
		}
		if(sum==max) printf("%d",i);
	}
}

注意

该程序仅供学习参考!

举报

相关推荐

0 条评论