请各位大佬帮忙看看哪里有问题
查看原帖
请各位大佬帮忙看看哪里有问题
363096
封禁用户楼主2021/10/31 21:02
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n,m,s,u,v,w,a[100][100],dis1[100][100],dis[100];
	cin>>n>>m>>s;
	for(int i=1;i<=m;i++)
	{
		cin>>u>>v>>w;
		a[u][v]=w;
		dis1[u][v]=w;
		if(u==s)
		{
			dis[v]=w;
			dis[u]=w;
		}
	}
	int pre[100];
	dis[s]=0;
	pre[s]=0;
	for(int v=1;v<=n;v++)
	{
		for(int i=1;i<n;i++)
		{
			if(dis[s]+a[s][v]<dis[v])
			{
				dis[v]=dis[s]+a[s][v];
				pre[v]=u;
			}
		}
	}
	for(int i=1;i<=n;i++)
	{
		cout<<dis[i]<<" ";
	}
	return 0;
}
2021/10/31 21:02
加载中...