路径

描述 Description
图是由一组顶点和一组边组成的。一条边连接两个顶点。例如,图1表示了一个有4个顶点V、5条边的图。图中,每条边e是有方向的,方向从起点到终点,并且每条边都有价值。用整数0,1,…,m-1可以表示一个有m个顶点的图。

图1                                      图2
一条路径连接了一个点Vi和另一个点Vj,其方向与经过的一系列边的方向一致。路径的长度是途经边的条数,路径的费用是边价值的总和。对于一个给定的图,你的任务是在所有最短路径中,找出需要最少费用的连接V0和V1的路径。一个需要最少费用的最短路径称之为廉价最短路径。

让我们重新考虑图1,从0到1的最短路径是只含一条边的路径0→1,费用是10。当然,还有更便宜的路:0→2→1和 0→3→1,但是它们比第一条路径长(有2条边)。所以,0→1是廉价最短路径。
看一下另一个例子,图2,它有2条最短路径,其长度是2,路径0→3→1(费用=4)比路径0→2→1(费用=5)花费少。还用另一条路径0→2→3→1(费用=3),虽然便宜但是很长。所以,廉价最短路径是0→3→1。

 
输入格式 InputFormat
输入文件第一行有两个整数m和n,用一个空格隔开,其中,m是顶点数,而n是边数。接下来的n行给出所有的边及其价值,每行有3个整数(相邻两个整数间有一个空格),表示起点,终点和边的价值。顶点最多有100个,编号在0到99之间。边最多有1000条,其价值在0到215-1之间。
 
输出格式 OutputFormat
输出文件仅有一行包含一个整数,即V0→V1的廉价最短路径的费用。当出现有多个廉价最短路径的情况时,它们的费用是一样的。
 
样例输入 SampleInput [复制数据]

4 5
0 2 2
0 3 2
0 1 10
2 1 2
3 1 2

样例输出 SampleOutput [复制数据]

10

题解:找廉价最短路径,要求路径最短,则根据最短路松弛特点,在每条边的权值上加上一个较大的数x,最后输出结果mod x即可。顶点m<=100,数据规模较小,floyd就可以AC。

代码:

 #include<stdio.h>
#include<string.h>
int i,j,n,m,k,x,y,z,a[][],
mx=;
int
pre(void)
{
memset(a,,sizeof(a));
return ;
} int
add(int x,int y,int z)
{
if ((mx+z)<a[x][y])
a[x][y]=z+mx;
return ;
} int
min(int a,int b)
{
if (a<b) return(a);
else return(b);
} int
init(void)
{
scanf("%d%d",&m,&n);
for(i=;i<=n;i++)
{
scanf("%d%d%d",&x,&y,&z);
add(x,y,z);
}
return ;
} int
main(void)
{
pre();
init(); for(k=;k<=m-;k++)
for(i=;i<=m-;i++)
for(j=;j<=m-;j++)
if ((i!=j)&&(i!=k)&&(k!=j))
a[i][j]=min(a[i][j],a[i][k]+a[k][j]); printf("%d\n",a[][]%mx);
return ;
}

[TYVJ] P1238 路径的更多相关文章

  1. bzoj 3196 Tyvj 1730 二逼平衡树(线段树套名次树)

    3196: Tyvj 1730 二逼平衡树 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1807  Solved: 772[Submit][Stat ...

  2. P1238 走迷宫

    原题链接 https://www.luogu.org/problemnew/show/P1238 为了巩固一下刚学习的广搜,练一下迷宫类型的题 不过这道题我用的深搜..... 看问题,我们就知道这道题 ...

  3. tyvj 1044 数字三角形 记忆化搜索

    数字三角形 Time Limit: 1 Sec  Memory Limit: 162 MB 题目连接 http://www.tyvj.cn/p/1044 Description 示出了一个数字三角形. ...

  4. Tyvj P1520 树的直径

    P1520 树的直径 http://www.tyvj.cn/p/1520 时间: 1000ms / 空间: 131072KiB / Java类名: Main 描述 树的直径,即这棵树中距离最远的两个结 ...

  5. 洛谷——P1238 走迷宫

    P1238 走迷宫 题目描述 有一个m*n格的迷宫(表示有m行.n列),其中有可走的也有不可走的,如果用1表示可以走,0表示不可以走,文件读入这m*n个数据和起始点.结束点(起始点和结束点都是用两个数 ...

  6. Tyvj 1176 火焰巨魔的惆怅

    Tyvj 1176 火焰巨魔的惆怅 背景 TYVJ2月月赛第一道 巨魔家族在某天受到了其他种族的屠杀,作为一个英雄,他主动担任了断后的任务,但是,在巨魔家族整体转移过后,火焰巨魔却被困住了,他出逃的方 ...

  7. cogs 826. [Tyvj Feb11] GF打dota

    826. [Tyvj Feb11] GF打dota ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 s   内存限制:128 MB 众所周知,GF同学喜 ...

  8. COGS——T 826. [Tyvj Feb11] GF打dota

    http://www.cogs.pro/cogs/problem/problem.php?pid=826 ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 ...

  9. cogs 826. [Tyvj Feb11] GF打dota 次短路详细原创讲解! dijkstra

    826. [Tyvj Feb11] GF打dota ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 s   内存限制:128 MB 众所周知,GF同学喜 ...

随机推荐

  1. WCF-NAT模式访问

    由于项目需求,第一次用wcf做基于internet的访问.整理一下自己的探索,作为总结,也供自己以后回顾. 要求:(1)wcf服务需要部署在internet之中. (2)双工通信. 出现问题: 根据上 ...

  2. PYTHON线程知识再研习C---线程互斥锁

    结合例子,就很好理解了. 就是不要让共享变量被各个线程无序执行,导致结果不可预期 threading模块中定义了Lock类,可以方便的处理锁定: #创建锁mutex = threading.Lock( ...

  3. PHP基础设计模式——工厂模式

    <?php//文件名:Factory namespace IMooc; class Factory { //工程模式 static function creatDatabase() { $db ...

  4. 关于ognl.OgnlException: target is null for setProperty(null的解决方案

    在跑struts2的时候有时候会出现上面的错,特别是新手, 这种情况是在struts2高级的POJO访问时候出现的s 警告: Error setting expression 'user.passwo ...

  5. json对象与字符串的相互转换,数组和字符串的转换

    1.json对象转换为字符串 JSON.stringify(value [, replacer] [, space])  var student = new Object(); student.id ...

  6. JSF标签大全详解

    1. JSF入门 藉由以下的几个主题,可以大致了解JSF的轮廓与特性,我们来看看网页设计人员与应用程序设计人员各负责什么. 1.1简介JSF Web应用程序的开发与传统的单机程序开发在本质上存在着太多 ...

  7. DB2查询当前时间与指定时间的时间差(相隔的秒数)

    DB2查询当前时间与指定时间的时间差(相隔的秒数). 例子:“拍品表 auct_item”中有个“结束时间 end_date”的字段,求结束时间与当前时间的间隔秒数. select  (DAYS(a. ...

  8. jsp filter登录限制过滤器

    http://www.cnblogs.com/hemingwang0902/archive/2012/01/09/2316956.html UserFilter.java package filter ...

  9. 注册AxtiveX控件

    Win8.1或者Win7下 首先在“管理员的身份”运行cmd 然后输入:regsvr32 D:\***\*.ocx

  10. oracle得到拼音函数

    CREATE OR REPLACE FUNCTION fgetpy (v_str VARCHAR2)   RETURN VARCHAR2AS   v_strlen   INT;   v_return  ...