zoukankan      html  css  js  c++  java
  • 最短路

    在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的T-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?

    Input

    输入包括多组数据。

    每组数据第一行是两个整数NN ,MM (N100N≤100 ,M10000M≤10000 ),NN 表示成都的大街上有几个路口,标号为11 的路口是商店所在地,标号为NN 的路口是赛场所在地,MM 则表示在成都有几条路。N=M=0N=M=0 表示输入结束。

    接下来MM 行,每行包括33 个整数AA ,BB ,CC (1A1≤A ,BNB≤N ,1C10001≤C≤1000 ),表示在路口AA 与路口BB 之间有一条路,我们的工作人员需要CC 分钟的时间走过这条路。

    输入保证至少存在11 条商店到赛场的路线。

    Output

    对于每组输入,输出一行,表示工作人员从商店走到赛场的最短时间。

    Sample Input

    2 1
    1 2 3
    3 3
    1 2 5
    2 3 5
    3 1 2
    0 0

    Sample Output

    3
    2

    直接用Floyd算法,

    https://vjudge.net/problem/UESTC-30

     1 #include<iostream>
     2 #include <cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 #define inf 0x3f3f3f3f
     6 using namespace std;
     7 
     8 int p[105][105];
     9 int main(){
    10     int a,b,n,m,k;
    11     while(scanf("%d%d",&a,&b)&&!(a==0||b==0)){
    12         for(int i=1;i<=a;i++){
    13             for(int j=1;j<=a;j++){
    14                 if(i==j){
    15                     p[j][i]=0;
    16                 }else{
    17                     p[j][i]=inf;
    18                 }
    19             }
    20         }
    21         while(b--){
    22             scanf("%d%d%d",&n,&m,&k);
    23             if(p[n][m]>k)
    24                 p[n][m]=p[m][n]=k;
    25         }
    26         for(int i=1;i<=a;i++){
    27             for(int j=1;j<=a;j++){
    28                 for(int l=1;l<=a;l++){
    29                     p[j][l]=p[l][j]=min(p[l][j],p[l][i]+p[i][j]);
    30                 }
    31             }
    32         }
    33         cout<<p[1][a]<<endl;
    34     }
    35    return 0;
    36 }
  • 相关阅读:
    CB文件读入后输出中文乱码问题
    2019-ICPC-沈阳站打铁感想
    计蒜客习题:画图游戏(Havel-Hakimi定理)
    计蒜客练习题:接龙(带权并查集)
    搜索----Dungeon Master
    最短路 poj1502 MPI Maelstrom
    poj 3259 Wormholes
    Silver Cow Party
    Til the Cows Come Home
    Cow Contest
  • 原文地址:https://www.cnblogs.com/zllwxm123/p/7229778.html
Copyright © 2011-2022 走看看