XUT 1245

这是一道2016湘潭邀请赛的题目,记得那个时候看到这个题目就想到了最短生成树,然后给别人做,WA了,最后发现是有向图,然后我自己去写了个搜索,结果是RE吧

今天刚刚好想到这个题目,然后再来做,发现这个真的是个水题,但是当初看题目都没看懂,我也是醉了,题目都已经要求了是从第一个到最后一个的最短的路径,我们想岔了,然后鸭蛋。。。

http://202.197.224.59/OnlineJudge2/index.php/Problem/read/id/1245

 1 #include <stdio.h>
 2 #include <string.h>
 3 #define inf 0x3f3f3f3f
 4 int main()
 5 {
 6     int m,n,a,b,c,falg;
 7     int dis[100005];
 8     long long ans;
 9     while(~scanf("%d%d",&m,&n))
10     {
11         ans = 0;
12         falg = 1;
13         memset(dis,inf,sizeof(dis));
14         for(int i = 1 ; i <= n ; i++ )
15         {
16             scanf("%d%d%d",&a,&b,&c);
17             if(b==a+1&&c<dis[a]) dis[a] = c;
18         }
19         for(int i = 1 ; i < m ; i++)
20         {
21             if(dis[i]==inf)
22             {
23                 falg = 0;
24                 break;
25             }
26             ans+=dis[i];
27         }
28         if(falg)printf("%lld
",ans);
29         else printf("-1
");
30     }
31 }
原文地址:https://www.cnblogs.com/Tree-dream/p/5978225.html