![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
小小菜鸡俊
这个作者很懒,什么都没留下…
展开
-
POj1860(floyd+正权回路)
题目传送门题意:有多种汇币,汇币之间可以交换,这需要手续费,当你用100A币交换B币时,A到B的汇率是29.75,手续费是0.39,那么你可以得到(100 - 0.39) * 29.75 = 2963.3975 B币。题解:我们可以用货币种类编号建图,在图上任意两点表示兑换关系并且是双向的,值得注意的是货币A没有兑换是的权值是不变的,而A兑换成B那么B的权值就是(k-Cab)*Rab,那么我们只要Floyd跑一边。然后判断是否存在一个dis[v]>dis[i]+w;代码:#inclu原创 2020-07-31 18:56:07 · 622 阅读 · 0 评论 -
Poj3660(floyd)
题目传送门题意:编号为1-N的奶牛参加比赛,告诉我们m场比赛结果试问有几头奶牛的排名可以确定。题解:其实就是一个传递闭包的模板题,用Floyd把所有有联系的比赛结果串在一起。Ac 代码:#include<bits/stdc++.h>using namespace std;const int maxn=1e2+5;int rp[maxn][maxn]; //rp[i][j]=1表示编号为i的奶牛战胜编号为j的奶牛;int n,m,u,v;void floyd.原创 2020-07-31 18:36:53 · 146 阅读 · 0 评论