100ptsHack错了求调
查看原帖
100ptsHack错了求调
665533
HYJ37567楼主2024/10/20 21:09
#include <bits/stdc++.h>
using namespace std;
int n,m,a[105][105],u,v,w;
int main()
{
	scanf("%d%d",&n,&m);
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++) a[i][j]=1e9;
	}
	for (int i=1;i<=m;i++)
	{
		scanf("%d%d%d",&u,&v,&w);
		if(a[u][v]!=0) a[u][v]=a[v][u]=min(a[u][v],w); 
		a[u][v]=a[v][u]=w;
	}
	for(int k=1;k<=n;k++)
		for(int i=1;i<=n;i++)
			for(int j=1;j<=n;j++)
				a[i][j]=min(a[i][j],a[i][k]+a[k][j]);                        
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			if(i==j) a[i][j]=0;
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
	return 0;
}
2024/10/20 21:09
加载中...