UVA 436Arbitrage (II)【floyd】
来源:互联网 发布:华夏风云武将数据 编辑:程序博客网 时间:2024/06/05 04:27
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=377
题意:硬币兑换,能不能兑换一圈使得手中的钱变多。
floyd传递闭包。
代码:
#include <stdio.h>#include <iostream>#include <algorithm>#include <string.h>#include <queue>#include <math.h>#include <map>#include <string>using namespace std;int n, m;map<string, int> MP;double a[50][50];int main(){ string s,y; double tmp; int cases = 1; while (cin >> n && n) { memset(a, 0, sizeof(a)); MP.clear(); for (int i = 1; i <= n; i++) { cin >> s; MP[s] = i; } for (int i = 1; i <= n; i++) a[i][i] = 1.0; cin >> m; for (int i = 1; i <= m; i++) { cin >> s >> tmp >> y; a[MP[s]][MP[y]] = tmp; } for (int k = 1; k <= n; k++) for (int i = 1; i <= n; i++) for (int j = 1; j <= n; j++) { if (a[i][j] < a[i][k] * a[k][j]) a[i][j] = a[i][k] * a[k][j]; } int ok = 0; for (int i = 1; i <= n; i++) if (a[i][i] > 1.0) { ok = 1; break; } printf("Case %d: ",cases++); if (ok) printf("Yes\n"); else printf("No\n"); } return 0;}
0 0
- UVA 436 - Arbitrage (II)(floyd)
- UVA 436Arbitrage (II)【floyd】
- UVa 436 - Arbitrage (II)
- UVa 104|Arbitrage|Floyd
- uva 436 - Arbitrage (II)(暴力)
- UVA 104 - Arbitrage(floyd变形)
- Arbitrage - UVa 104 Floyd变形
- uva 104 - Arbitrage(最短路Floyd)
- UVA - 104 Arbitrage floyd的最初形式
- uva 104 Arbitrage (DP + floyd)
- Arbitrage (Uva 104 dp+floyd)
- UVA 104 Arbitrage DP(类似floyd)
- UVa 104 Arbitrage (DP+最短路+Floyd)
- Floyd: Arbitrage
- pku 2240 Arbitrage(floyd)
- POJ 2240 Arbitrage (Floyd)
- hdu 1217 Arbitrage--Floyd
- poj 2240Arbitrage(Floyd)
- POJ3641(Pseudoprime numbers 费马小定理)
- 界面之间传值
- jQuery 的 ready 函数是如何工作的?
- 12. 打印1到最大的n位数
- WeChatServer
- UVA 436Arbitrage (II)【floyd】
- 冷知识:你知道每个视窗都有的 [x] 是怎麽来的吗?
- C语言堆栈入门——堆和栈的区别
- leetcode之二叉树的镜像
- spring有哪些高级特性?
- Oracle父节点及其子节点数据的查询
- c/c++语言中sort函数的使用方法
- JS中的作用域(scope)
- 【JS设计模式】工厂方法模式