背景
湖南师大附中成为百年名校之后,每年要接待大批的游客前来参观,学校认为大力发展旅游业,可以带来一笔可观的收入。
输入格式
对于每组数据:
第一行有两个正整数N,M,分别表示学校的景点个数和有多少对景点之间直接有边相连,(N<=100,M<=10000)。
以下M行,每行三个正整数,分别表示一条道路的两端的编号,以及这条道路的长度。
输出格式
对于每组数据,输出一行:。
如果该回路存在,则输出一个正整数,表示该回路的总长度,否则输出“No solution.”(不要输出引号)。
样例1
样例输入1
5 7
1 4 1
1 3 300
3 1 10
1 2 16
2 3 100
2 5 15
5 3 20
4 3
1 2 10
1 3 20
1 4 30
样例输出1
61
No solution.这题一看就是典型的Flord最小环问题嘛。
这篇文章对Flord的讲解十分到位很适合新手/art/201403/433874.htm。
闲话少叙,代码走起
#include
#include
inline int min(int a,int b)。
{
return a
}
using namespace std;。
const int N=101;。
const int INF=999999;。
int dist[N][N],route[N][N];。
int n,m;
int main()。
{
int u,v,x;。
while(cin>>n>>m)。
{
memset(dist,0,sizeof(dist));。
for(int i=1;i<=n;i++)。
for(int j=1;j<=n;j++)。
dist[i][j]=route[i][j]=INF;。
for(int i=1;i<=m;i++)。
{
cin>>u>>v>>x;。
dist[u][v]=dist[v][u]=route[u][v]=route[v][u]=x;。
}
int ans=INF;。
for(int k=1;k<=n;k++)。
{
for(int i=1;i<=n;i++)。
for(int j=i+1;j<=n;j++)。
{
ans=min(ans,route[i][j]+dist[i][k]+dist[k][j]);。
}
for(int i=1;i<=n;i++)。
for(int j=1;j<=n;j++)。
{
route[i][j]=min(route[i][j],route[i][k]+route[k][j]);。
}
}
if(ans==INF)。
cout<<'No solution.'< else cout< } return 0; }
北京市卫健委 提醒,今日是国庆节假期最后一天,面临进返京高峰,出京旅行
“秋天的日子是半透明的 涂在金色的土地和田野上” 如果有一个季节,能让整
最美的风景在路上,最美的路上有风景。一条条公路串联湖北的名山大川、多彩
从靠山水到卖场景 从卖特产到拼创意 乡村旅游越来越好玩 “采摘”“收割”“
老君山两日自由行攻略,不抱团,自己做大巴或开车去攻略。有爬山和做索道两
旅游出行方式的简单比较 出游 方式 项目 比较 特点 优点 局限性 适合人群 适合
一年四季,寒来暑往,春夏秋冬,风景各有各的美。而自驾旅游的魅力,就在于
从北京海淀出发,自驾140公里左右,就可以看到另外一番天地。 这里是高山草
我们都是时间的旅行者, 为了寻找生命中的光。 终其一生,行走在漫长的旅途
原标题:三月赏花游 户外踏青走起 文、图/广州日报全媒体记者罗磊 通讯员柳