【floyd】 poj 2240
#include <iostream>
#include <map>
#include <string>
#include <memory.h>
using namespace std;
;
int n; //货币种类
int m; //兑换方式
mapSTL; //建立一个字符串与整数一一对应的容器STL,以便利用邻接矩阵存储数据
double rate;
],str1[],str2[];
][];
int i,j,k;
void floyd(void)
{
;k<=n;k++)
;i<=n;i++)
;j<=n;j++)
if(dis[i][j] < dis[i][k] * dis[k][j]) //变形的最大路径,变"+"为"*"
dis[i][j] = dis[i][k] * dis[k][j];
return;
}
int main()
{
// freopen("in.txt","r",stdin);
;
while(cases)
{
memset(dis,inf,sizeof(dis));
cin>>n;
if(!n)break;
;i<=n;i++)
{
cin>>str;
STL[str]=i; //将输入的货币从1到n依次编号
dis[i][i]=; //到自身的转换率默认为1,但通过floyd可能会被改变
}
cin>>m;
;i<=m;i++)
{
cin >> str1 >> rate >> str2;
dis[STL[str1]][STL[str2]]=rate; //构造图
}
floyd();
int flag=false;
;i<=n;i++)
)
{
flag=true;
break;
}
if(flag)
cout<<"Case "<<cases++<<": Yes"<<endl;
else
cout<<"Case "<<cases++<<": No"<<endl;
}
;
}
【floyd】 poj 2240的更多相关文章
- 【动态规划】POJ 1161 & ZOJ1463 & XMU 1033 Brackets sequence
题目链接: http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1033 http://poj.org/problem?id=1141 ZOJ目前挂了. ...
- BZOJ1599 find the mincost route 【floyd】
题目链接 BZOJ1599 题解 最小环模板?周末了养生一下[逃] 解释一下原理 \(floyd\)算法每一轮求出以\([1,k]\)为中介点的最短路 我们对于一个环,考虑环上编号最大的点,在\(k\ ...
- 【素数】 poj 2739 一个数能有多少种连续素数相加方案
简单题 素数打表 根据数据量 用n2算法遍历 开一个save[k]素数存前k个素数和即可. #include <iostream> #include <cstdio> ...
- 【dp】 poj 1157
不错的dp入门题 画出dp矩阵 每个dp[i][j]是由“其上”的状态或是“其左上”的状态转化而来,那我们选对角线和上边进行三角dp推导 #include<stdio.h> #incl ...
- 【原创】POJ 3259 Wormholes(Bellman-Ford) && 简介Bellman-Ford算法
[原创] 题目大意 John有N个农场,一共有M条边,在农场上出现了W个虫洞(W是一条边),其中M是双向普通边,W是单向虫洞边.John穿行于农场之间每经过一条边(S到E)的时间为+T,每经过虫洞会时 ...
- 【Floyd】珍珠
[题目描述] 有n颗形状和大小都一致的珍珠,它们的重量都不相同.n为整数,所有的珍珠从1到n编号.你的任务是发现哪颗珍珠的重量刚好处于正中间,即在所有珍珠的重量中,该珍珠的重量列(n+1)/2位.下面 ...
- POJ 3660 Cow Contest【floyd】
题目链接: http://poj.org/problem?id=3660 题目大意: 给出n头牛,m个关系,关系为a的战力比b高.求最后可以确定排名的牛的数量 思路: 1.如果一头牛跟其他所有牛都确定 ...
- POJ 1847 Tram【Floyd】
题意:给出n个站点,每个站点都有铁路通向其他站点 如果当前要走得路恰好是该站点的开关指向的铁路,则不用扳开关,否则要手动扳动开关,给出起点和终点,问最少需要扳动多少次开关 输入的第一行是n,start ...
- POJ 1502 MPI Maelstrom【floyd】
题目大意:求点1到所有点最短路径的最大值 思路:水题,单源最短路,网上解题清一色dijkstra,但是点数小于100显然floyd更简洁嘛 #include<cstdio> #includ ...
随机推荐
- C# 鼠标事件弹框
if (e.Button == MouseButtons.Right) { if (gridView1.GetFocusedRowCellValue("color").ToStri ...
- Bourn Again Shell编程
shell既是命令解释程序,又是一种高级程序设计语言.shell是解释型语言. bash脚本的建立和运行: 注释行以#开头 #!后面的参数告诉系统执行本文件的程序 执行脚本文件有两种方法: 1. ...
- 学习笔记——解释器模式Interpreter
解释器模式,其实就是编译原理中的语法解释器,如果用在项目中,可以用于实现动态脚本的解析,也就是说项目可以支持用户脚本扩展. 但实际上,这种运行时解释,效率很慢,如果不是很需要的话,不建议使用. 一种简 ...
- HOSTS文件修改后不起作用的原因
如果是通过记事本修改,其实是没有问题的,如果有问题,网上搜到的是ipconfig /flushdns之类的 如果是批量程序写的,那就要小心了, 一定要ANSI(美标格式的,忘了英文是什么来着) 保存后 ...
- HTTP 返回状态值详解
当用户点击或搜索引擎向网站服务器发出浏览请求时,服务器将返回Http Header Http头信息状态码,常见几种如下: 1.Http/1.1 200 OK 访问正常 表示成功访问,为网站可正常访问 ...
- TCP/IP体系结构
如果你确实还没接触过网络.数据通信方面的技术,那么咱们的路还很长,至少我认为软件测试并非只停留在上层的应用,而测试的最高境界应该是对底层核心技术的测试,通过架构分析.协议数据包分析等等来测试出结果-- ...
- luci 随笔
entry()函数, 第一个参数是定义菜单的显示(Virtual path). 第二个参数定义相应的处理方式(target). alias是指向别的entry的别名,from调用的某一个view,cb ...
- flash检测网络是否通畅
air: 要在 Adobe ® Flash ® Professional(CS4 或更高版本)中使用 air.net 包: 选择“文件”>“发布设置”命令. 在 Flash 面板中,单击 Act ...
- 使用Visual C++编程
1.Visual C++的主要组件 Visual C++支持遵循C++11语言标准的C++语句,C++11语言标准是在ISO/IEC 14882:2011文档中定义的.Visual C++还没有实现该 ...
- php 控制循环
控制结构语法 endif.endswitch.endwhile.endfor.endforeach