人活着系列之开会

Time Limit: 1000MS Memory limit: 65536K

题目描写叙述

人活着假设是为了事业。从打工的到老板的,个个都在拼搏,奋斗了多年最终有了非凡成就。有了一笔丰富的钱財。反过来说。人若赚取了全世界又有什么益处呢?生不带来。死了你还能带去吗?金钱能买保险,但不能买生命,金钱能买药品,但不能买健康,人生在世,还是虚空呀!

在苍茫的大海上。有非常多的小岛。每一个人都在自己的小岛上。

又到了开会的时候了,鹏哥通过飞信告知了每一个人,然后大家就開始往鹏哥所在的主岛走,问谁先到达主岛。

有几点注意事项:

  1. 主岛一定除了鹏哥之外没有不论什么人。

  2. 并不是全部的小岛上都有人,有的小岛为空。

  3. 例子保证一定有人会先到达主岛。

  4. 小岛上最多仅仅有一个人。

  5. 每一个人往主岛走的速度同样

  6. 每一个小岛都有一条或多条路与别的小岛相连,可能和自己有一条路相连

  7. 至少有一个小岛和主岛相连。保证全部的人都能够到达主岛

  8. 为了节约时间,每一个人都走最短的路径

  9. 两个岛之间或许不仅仅有一条路相连。

  10. 每一个小岛都被标记为字母,大写字母代表这个小岛有人,小写字母代表这个小岛没有人。Z代表鹏哥所在主岛的位置

  11. A和a表示两个不同的牧场。A a 8代表的是A岛到a岛的距离是8 ,A岛上是有人的,a岛上是没有人的。

输入

第一行 :N ,代表着大海上一共同拥有N条连接小岛的路,(1<=
N<=10000)

接下来N行,每一行有两个字母和一个整数len,代表着两个岛的标记是否存在人。以及这两个岛之间的距离。(1<=len<=1000)

输出

最先到达主岛的那个人所在的岛的字母以及他走过的路径长度。

演示样例输入

6
A e 6
e Z 8
B c 3
c d 2
D A 12
d Z 3

演示样例输出

B 8 

题目不难,仅仅需将字母转化为矩阵的坐标。大写和小写字母一共52个,弗洛伊德肯定过
11条注意。非常重要

#include <iostream>
#include <cstdio>
#include <cstring>
#include <math.h>
#include <cstdlib>
#include <algorithm>
const int INF = 1e6;
using namespace std;
int dis[110][110],sum; void init()
{
for(int i = 1;i <= 52;i ++)
{
for(int j = 1;j <= 52;j++)
{
if(i==j) dis[i][j] = 0;
else
dis[i][j] = INF;
} }
}
int GET(char a)
{
if(a >= 'A'&&a <= 'Z')
return a-'A'+1;
else
return a-'a'+27;
}
void Flyed()
{
sum = INF;
for(int k = 1;k<53;k++)
{
for(int i = 1;i<53;i++)
{
for(int j = 1;j<53;j++)
{
if(dis[i][j] > dis[i][k]+dis[k][j])
dis[i][j] = dis[i][k]+dis[k][j];
}
}
}
}
int main()
{
int n,c;
char a[5],b[5];
scanf("%d",&n);
getchar();
init();
for(int i = 1;i <= n;i ++)
{
scanf("%s%s%d",a,b,&c); int x = GET(a[0]);
int y = GET(b[0]); if(dis[x][y] > c)
{
dis[x][y] = dis[y][x] = c;
}
}
Flyed(); int st;
for(int i = 1;i<26;i++)
{
if(sum > dis[i][26])
{
sum = dis[i][26];
st = i;
}
}
st--;
printf("%c %d\n",st+'A',sum);
return 0;
}

版权声明:本文博主原创文章,博客,未经同意不得转载。

人们的Live Meeting系列 (floyd)的更多相关文章

  1. HDU-4511 小明系列故事——女友的考验 floyd变种-标号递增最短路

    题意:给定N个点,现在要求出从1号点到N号点的最短路.题目给的限制条件就是对于某条路径是不能够走的,但是可以选择某段路径走,另外就是所走的路径的标号必须是递增的. 分析:由于给定的是一些列的坐标点,这 ...

  2. 人活着系列之芳姐和芳姐的猪(Floyd)

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2929 这个题一方面数据水,另一方面就是思维水, ...

  3. 人活着系列Tanya和蔡健雅猪 (floyd)

    人活着系列之芳姐和芳姐的猪 Time Limit: 1000MS Memory limit: 65536K 题目描写叙述 芳姐特别喜欢猪,所以,她特意养了m个猪圈,顺便在k条无向边,每条边有都有起点v ...

  4. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  5. Floyd算法(三)之 Java详解

    前面分别通过C和C++实现了弗洛伊德算法,本文介绍弗洛伊德算法的Java实现. 目录 1. 弗洛伊德算法介绍 2. 弗洛伊德算法图解 3. 弗洛伊德算法的代码说明 4. 弗洛伊德算法的源码 转载请注明 ...

  6. Floyd算法(二)之 C++详解

    本章是弗洛伊德算法的C++实现. 目录 1. 弗洛伊德算法介绍 2. 弗洛伊德算法图解 3. 弗洛伊德算法的代码说明 4. 弗洛伊德算法的源码 转载请注明出处:http://www.cnblogs.c ...

  7. Floyd算法(一)之 C语言详解

    本章介绍弗洛伊德算法.和以往一样,本文会先对弗洛伊德算法的理论论知识进行介绍,然后给出C语言的实现.后续再分别给出C++和Java版本的实现. 目录 1. 弗洛伊德算法介绍 2. 弗洛伊德算法图解 3 ...

  8. NOIP2012pj文化之旅[floyd]

    描述 有一位使者要游历各国,他每到一个国家,都能学到一种文化,但他不愿意学习任何一种文化超过一次,即如果他学习了某种文化,则他就不能到达其他有这种文化的国家.不同的国家可能有相同的文化.不同文化的国家 ...

  9. Walls(floyd POJ1161)

    Walls Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7677   Accepted: 3719 Description ...

随机推荐

  1. [C#基础] 泛型

    为什么泛型? 在泛型中,最重要的应用便是集合类,因此我们模拟一个简单的集合类 对于上述示例,可以有如下应用 从上可看出,自定义的代码太丑陋了,只能用于string类型. 当然我们可以用object作为 ...

  2. CentOS6.5与window远程桌面配置

    VNC配置手冊 一.服务端 VNC(Virtual Network Computing)是一种Linux系统(或者BSD.Mac等)下经常使用的图形化远程管理工具.使用的是RFB协议.VNC跟SSH一 ...

  3. IOS中的ViewController 的loadView、viewDidLoad、viewDidUnload

    由init.loadView.viewDidLoad.viewDidUnload.dealloc的关系说起: 1 init方法 在init方法中实例化必要的对象(遵从LazyLoad思想) init方 ...

  4. Android 的独特shell命令

    Android本来就是一个linux操作系统,所以大部分都是linux的命令,如mkdir,ls,netstat,mount,ps 等,这里就不具体介绍了, 主要介绍几个Android特有的. get ...

  5. 图像处理特征不变算子系列之Moravec算子(一)

    论文转载请注明出处:http://blog.csdn.net/kezunhai 1977年,Moravec提出了兴趣点(Points of Interests)的概念,并应用于解决Stanford C ...

  6. Android NDK入门实例 计算斐波那契数列二生成.so库文件

    上一篇文章输生成了jni头文件,里面包含了本地C代码的信息,提供我们引用的C头文件.下面实现本地代码,再用ndk-build编译生成.so库文件.由于编译时要用到make和gcc,这里很多人是通过安装 ...

  7. Android支付接入(八):Amazon亚马逊支付

    下面跟大家一起走一遍Amazon亚马逊的支付,亚马逊目前刚把业务拓展到大陆市场,但这并不代表Amazon支付不成熟,恰恰相反,Amazon的支付流程,支付结果获取及测试另人称赞,支付流程.测试流程简洁 ...

  8. Unix Domain Socket 域套接字实现

    主要注意流程: STREAM SOCKET: Server :  socket() --->  bind() ---> listen()  ---> accept() Client: ...

  9. 已知直线上的两点 A(x1, y1), B(x2, y2) 和另外一点 C(x0, y0),求C点到直线的距离。

    数学知识太差,一点点积累,高手勿喷. 1. 先求出AB向量 a = ( x2-x1, y2-y1 ) 2. 求AB向量的单位方向向量 b = √((x2-x1)^2 + (y2-y1)^2)) a1 ...

  10. CSDN开源夏令营 百度数据可视化实践 ECharts(8)问题分析

    ECharts问题描写叙述: 问题就是折线图上的点是显示的,有人问能不能一開始不显示,当你点击的时候或者是当鼠标移动到上面的时候,折线上的点才显示? 例如以下图所看到的: 分析:让折线上的点不显示能够 ...