HDU 1217 Arbitrage(Floyd的应用)
给出一些国家之间的汇率,看看能否从中发现某些肮脏的......朋友交易。
这是Floyd的应用,dp思想,每次都选取最大值,最后看看自己跟自己的.....交易是否大于一。。。。
#include<iostream>
#include<cstring>
#include<queue>
#include<cstdio>
#include<map>
using namespace std;
#define exp 0.00000001
map<string,int>ma;
double dp[][];
bool Equal(double a,double b)
{
if(a-b > exp) return true;
return false;
}
int main()
{
int n,ca = ;
while(~scanf("%d",&n) && n)
{
string a;
ma.clear();
memset(dp,,sizeof(dp));
for(int i = ;i <= n;i++)
{
cin >> a;
ma[a] = i;
dp[i][i] = ;
}
int m;
scanf("%d",&m);
for(int i = ;i <= m;i++)
{
string fr,to;
int fr1,to1;
double k;
cin>>fr>>k>>to;
fr1 = ma[fr],to1 = ma[to];
dp[fr1][to1] = k;
}
for(int k = ;k <= n;k++)
{
for(int i = ;i <= n;i++)
{
for(int j = ;j <= n;j++)
dp[i][j] = max(dp[i][j],dp[i][k] * dp[k][j]);
}
}
bool flag = true;
for(int i = ;i <= n;i++)
{
if(Equal(dp[i][i],1.0))
{
flag = false;
break;
}
}
printf("Case %d: ",++ca);
if(flag) printf("No\n");
else printf("Yes\n");
}
return ;
}
HDU 1217 Arbitrage(Floyd的应用)的更多相关文章
- HDU 1217 Arbitrage (Floyd)
Arbitrage http://acm.hdu.edu.cn/showproblem.php?pid=1217 Problem Description Arbitrage is the use of ...
- POJ 2240 Arbitrage / ZOJ 1092 Arbitrage / HDU 1217 Arbitrage / SPOJ Arbitrage(图论,环)
POJ 2240 Arbitrage / ZOJ 1092 Arbitrage / HDU 1217 Arbitrage / SPOJ Arbitrage(图论,环) Description Arbi ...
- hdu 1217 (Floyd变形)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1217 Arbitrage Time Limit: 2000/1000 MS (Java/Others) ...
- hdu 1217 Arbitrage (最小生成树)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1217 /************************************************* ...
- HDU 1217 Arbitrage(Bellman-Ford判断负环+Floyd)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1217 题目大意:问你是否可以通过转换货币从中获利 如下面这组样例: USDollar 0.5 Brit ...
- hdu 1217 Arbitrage (spfa算法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1217 题目大意:通过货币的转换,来判断是否获利,如果获利则输出Yes,否则输出No. 这里介绍一个ST ...
- hdu 1217 Arbitrage(佛洛依德)
Arbitrage Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total S ...
- hdu 1217 Arbitrage
Flody多源最短路 #include<cstdio> #include<cstring> #include<string> #include<cmath&g ...
- hdu 1217 汇率 Floyd
题意:给几个国家,然后给这些国家之间的汇率.判断能否通过这些汇率差进行套利交易. Floyd的算法可以求出任意两点间的最短路径,最后比较本国与本国的汇率差,如果大于1,则可以.否则不可以. 有向图 一 ...
随机推荐
- OpenLDAP安装与配置
系统:ubuntu 14.04 安装: 1. sudo apt-get install slapd ldap-utils 2. 在1的过程中会让你输了admin密码 配置: 如果安装过,只是想配置Op ...
- Sublime text 3 如何格式化HTML代码
使用Sublime text 3 编写代码是一种享受,使用Sublime text 3 格式化HTML代码,需要安装插件,具体安装步骤如下: 1.打开菜单->首选项->插件控制,输入 ...
- MySQL启动相关知识
使用mysqld和mysqld_safe启动的区别 直接运行mysqld程序来启动MySQL服务的方法很少见,mysqld_safe脚本[注意:mysqld_safe只是一个脚本]会在启动MySQL服 ...
- 转 12C 连接CDB和PDB
来源:David Dai -- Focus on Oracle 连接到CDB 和普通实例一样的连接. 指定ORACLE_SID 以后可以使用OS认证,也可以使用密码进行连接. [oracle@Ora1 ...
- Redis 笔记
Redis是一个key-value存储系统.和Memcached类似,但是解决了断电后数据完全丢失的情况,而且她支持更多无化的value类型,除了和string外,还支持lists(链表).sets( ...
- 使用jstl标签遍历双层的map(map下面的map)
<c:forEach var="firstMap" items="${map}"> <c:forEach var="secondMa ...
- Drivers Dissatisfaction
Drivers Dissatisfaction time limit per test 4 seconds memory limit per test 256 megabytes input stan ...
- runtime基础
前言 学习Objective-C的运行时Runtime系统是很有必要的.个人觉得,得之可得天下,失之则失天下. Objective-C提供了编译运行时,只要有可能,它都可以动态地运作.这意味着不仅需要 ...
- %3f URL --> '?'拼接引发的问题
转载自:https://www.reddit.com/r/swift/comments/2w19kp/how_do_you_send_a_through_nsmutableurlrequest/ ho ...
- javascript语句语义大全(6)
var d = new Date();//创建当前日期对象var d = new Date('2016/03/22');//允许var d = new Date('2016/3/22');//允许va ...