P2009 跑步

题目背景

跑步是一项有意思的运动,尤其是可以开发人的脑筋。常神牛很喜欢跑步。

题目描述

常神牛跑步的场地是一个多边形(边数≤20,每个顶点用英文大写字母表示),并且在这个多边形内部,还会有一些小道,连接两个不相邻的顶点。所有的边长和小道都是双向通行的举例来说,下面一个图:

假设常神牛从A点跑到D点,最短的路径是A-E-D(长度为6)。

现在告诉你多边形的边数n,多边形每条边的长度,多边形内的连线数k,每条连线的两个端点及长度,以及起始点和结束点,请你输出最短路径的长度。但是常神牛有点强迫症,如果两点之间有多条道路直接连接,他会选择最长的那条。

注意:输入数据不保证起点和终点不同,也不保证小道的起点和终点不同。在读入过程中,如果两点之间有多条小道,那么它们间的距离为这些小道的最大值。所以,如果读入一个小道起点和终点相同,那么这个点到它本身的距离不为0。

输入输出格式

输入格式:

输入文件为run.in。

第一行,2个数,n,k。

第二行,n个数,分别表示多边形每条边的长度(按顺时针次序依次给出,即分别为AB,BC,CD,DE……的长度)。

以下k行,每行两个字母和一个数,两个字母表示该连线的起止点,数字表示长度。

最后一行,两个字母,分别为他跑步的起点和终点。

所有的一行的字母、数字之间用一个空格隔开。

输出格式:

输出文件为run.out。

一行,一个数,表示最短路的长度。

输入输出样例

输入样例#1: 复制

5 2
6 4 5 4 2
A D 7
E B 8
A D
输出样例#1: 复制

6

说明

对于20%的数据,k=0;

对于50%的数据,k≤10;

对于100%的数据,1≤n≤20,0≤m≤50,k≤100,所有路径长度均不大于1000。

Floyd

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 101
#define maxn 999999
using namespace std;
char ch;
int n,k,a,b,x,s,f[N][N];
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}

int main()
{
    n=read(),k=read();
    ;i<=n;i++)
     ;j<=n;j++)
      f[i][j]=maxn*(i!=j);
    ;i<=n;i++)
    {
        x=read();
        ]=f[i+][i]=x;
        ][i]=f[i][]=x;
    }
    ;i<=k;i++)
    {
        cin>>ch,a=ch-;
        cin>>ch,b=ch-;
        x=read();
        if(f[a][b]!=maxn)
          f[a][b]=f[b][a]=max(f[a][b],x);
        else f[a][b]=f[b][a]=x;
    }
    ;k<=n;k++)
     ;i<=n;i++)
      ;j<=n;j++)
       f[i][j]=min(f[i][j],f[i][k]+f[k][j]);
    cin>>ch,a=ch-;
    cin>>ch,b=ch-;
    printf("%d",f[a][b]);
    ;
}

洛谷——P2009 跑步的更多相关文章

  1. 洛谷 P2009 跑步

    P2009 跑步 题目背景 跑步是一项有意思的运动,尤其是可以开发人的脑筋.常神牛很喜欢跑步. 题目描述 常神牛跑步的场地是一个多边形(边数≤20,每个顶点用英文大写字母表示),并且在这个多边形内部, ...

  2. [洛谷P1353] 跑步Running

    问题描述 奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的运动方式是每天进行N(1 <= N <= 10,000)分钟的晨跑.在每分钟的开始,贝茜会选择下一分钟是用来跑步 ...

  3. 洛谷 题解 P1600 【天天爱跑步】 (NOIP2016)

    必须得说,这是一道难题(尤其对于我这样普及组205分的蒟蒻) 提交结果(NOIP2016 天天爱跑步): OJ名 编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间 Libre ...

  4. 洛谷 1600 (NOIp2016) 天天爱跑步——树上差分

    题目:https://www.luogu.org/problemnew/show/P1600 看TJ:https://blog.csdn.net/clove_unique/article/detail ...

  5. 【noip】跟着洛谷刷noip题2

    noip好难呀. 上一个感觉有点长了,重开一个. 36.Vigenère 密码 粘个Openjudge上的代码 #include<cstdio> #include<iostream& ...

  6. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  7. 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.

    没有上司的舞会  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond       题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...

  8. 洛谷P1108 低价购买[DP | LIS方案数]

    题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则.要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买:再低价购买”.每次你购买一支股票,你必须用低于你上次购买它的价格购买它 ...

  9. 洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn Label:二维数组前缀和 你够了 这次我用DP

    题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚.他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方.我们假定,他的农场划分成 N ...

随机推荐

  1. os.fork()

    ret = os.fork() if ret == 0: child_suite # 子进程代码 else: parent_suite # 父进程代码 Python中的fork() 函数可以获得系统中 ...

  2. bzoj 2083: [Poi2010]Intelligence test——vecto+二分

    Description 霸中智力测试机构的一项工作就是按照一定的规则删除一个序列的数字,得到一个确定的数列.Lyx很渴望成为霸中智力测试机构的主管,但是他在这个工作上做的并不好,俗话说熟能生巧,他打算 ...

  3. 【BZOJ】1774: [Usaco2009 Dec]Toll 过路费

    [题意]给定无向图,距离定义为边权和+最大点权,询问若干个两点最短距离.n<=250. [算法]排序+floyd [题解]考虑floyd的过程是每次找一个中转点,为了在当前找到一条新路径时方便地 ...

  4. Windows Phone 8.1基础教程(1) 页面导航、弹出框

    1. 跳转到其他页面 Frame.Navigate(typeof(页面),参数); 2. 后退回历史页面 Frame.GoBack(); 3. 回跳时判断 if(e.NavigationMode == ...

  5. Different Integers(牛客多校第一场+莫队做法)

    题目链接:https://www.nowcoder.com/acm/contest/139/J 题目: 题意:给你n个数,q次查询,对于每次查询得l,r,求1~l和r~n元素得种类. 莫队思路:1.将 ...

  6. WinRAR分割超大文件

    在自己的硬盘上有一个比较大的文件,想把它从网上通过E-Mail发送给朋友时,却发现对方的收信服务器不能够支持那么大的文件……,这时即使用ZIP等压缩软件也无济于事,因为该文件本身已经被压缩过了.于是许 ...

  7. 详解JS中Number()、parseInt()和parseFloat()的区别

    三者的作用: Number(): 可以用于任何数据类型转换成数值: parseInt().parseFloat(): 专门用于把字符串转换成数值: 一.Number( ): (1)如果是Boolean ...

  8. 关于RecylerView:1.在ScrollView的RecylerView滑动事件的处理。2.item之间的距离 小数取整

    1.在ScrollView的RecylerView滑动事件的处理. 在布局文件中在RecylerView外包裹一层相对布局 2.RecylerView item之间的距离 (1)编写SpaceItem ...

  9. Kaggle 数据挖掘比赛经验分享(转)

     原作者:陈成龙 简介 Kaggle 于 2010 年创立,专注数据科学,机器学习竞赛的举办,是全球最大的数据科学社区和数据竞赛平台.笔者从 2013 年开始,陆续参加了多场 Kaggle上面举办的比 ...

  10. 最简单的基于FFMPEG的图像编码器(YUV编码为JPEG)(转)

    原文转自 https://blog.csdn.net/leixiaohua1020/article/details/25346147/ 伴随着毕业论文的完成,这两天终于腾出了空闲,又有时间搞搞FFMP ...