floyd求助
  • 板块学术版
  • 楼主赵思齐
  • 当前回复17
  • 已保存回复17
  • 发布时间2020/5/24 13:48
  • 上次更新2023/11/7 01:52:29
查看原帖
floyd求助
291105
赵思齐楼主2020/5/24 13:48
#include <bits/stdc++.h>
using namespace std;
int n,m,a,b,c,x,y,len[110][110];
int main()
{
	for(int i=0;i<=100;++i)
		for(int j=0;j<=100;++j)
			len[i][j]=INT_MAX;
	cin>>n>>m>>x>>y;
	for(int i=1;i<=m;++i)
	{
		cin>>a>>b>>c;
		len[a][b]=len[b][a]=c;
	}
	for(int k=0;k<n;++k)
	{
		for(int i=0;i<n;++i)
		{
			for(int j=0;j<n;++j)
			{
				if(len[i][k]!=INT_MAX&&len[k][j]!=INT_MAX)
					if(len[i][k]+len[k][j]<len[i][j])
						len[i][j]=len[i][k]+len[k][j];
			}
		}
	}
	cout<<len[x][y]<<endl;
	return 0;
}

大佬帮忙看看哪里有问题

2020/5/24 13:48
加载中...