这题也是求正权回路的,但和之前那题用Bellman-ford的不一样,因为这个是不知道源点的。所以用Floyd可以求出所有节点的最短路径,然后判断a[i][i]是否大于1即可。反之,如果知道了确定的源节点,那么我们用Bellman-ford的话会更方便。具体他们的区别,请看这里。

//Floyd
#include <iostream>
#include <fstream>
#include <map>
#include <string>using namespace std;
#define LEN 35
#define INF 10000double a[LEN][LEN],rate;
int n,m;
map<string,int>name;void Floyd()
{int k,i,j;for(k=1; k<=n; k++){for(i=1; i<=n; i++){for(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 main()
{int i,k=1;char str[50],str1[50],str2[50];freopen("acm.txt","r",stdin);while( scanf("%d",&n)!=EOF && n){    memset(a,1,sizeof(a));for(i=1; i<=n; i++){cin>>str;name[str]=i;//    a[i][i]=1;
    }scanf("%d",&m);for(i=1; i<=m; i++){cin>>str1>>rate>>str2;int m,n;a[name[str1]][name[str2]]=rate;}Floyd();for(i=1; i<=n; i++){if( a[i][i]>1 ){printf("Case %d: Yes\n",k);break;}}if(i>n)printf("Case %d: No\n",k);k++;}return 0;
}

转载于:https://www.cnblogs.com/Jason-Damon/archive/2012/04/24/2468885.html

poj2240 Floyd相关推荐

  1. BZOJ1491: [NOI2007]社交网络(Floyd 最短路计数)

    Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 2343  Solved: 1266 [Submit][Status][Discuss] Descrip ...

  2. Good Bye 2014 B. New Year Permutation(floyd )

    题目链接 题意:给n个数,要求这n个数字小的尽量放到前面,求一个最小的. 给一个矩阵s[i][j]==1,表示位置 i 的数字可以和 位置 j 的数字交换. 分析: 刚开始用的是3个循环,每次都找一个 ...

  3. hdu 1599 find the mincost route(找无向图最小环)(floyd求最小环)

    ps(我到今天才知道Floyd的核心思想是动态规划==) hdu 1599 find the mincost route(找无向图最小环) 注意!这里写成   #define data 0x3f3f3 ...

  4. 弗洛伊德算法(Floyd)简介

    弗洛伊德算法(Floyd)简介 Floyd算法适用于解决求最短路径问题,相比于Digkstra算法思路更加简单,更容易理解,但是效率会明显低很多,可以作为初步学习的一种方法. 目录 弗洛伊德算法(Fl ...

  5. 数据结构与算法(7-4)最短路径(迪杰斯特拉(Dijkstra)算法、弗洛伊德(Floyd)算法)

    目录 一.最短路径概念 二.迪杰斯特拉(Dijkstra)算法(单源最短路径) 1.原理 2.过程 3.代码 三.弗洛伊德(Floyd)算法(多源最短路径) 1.原理 2.存储 3.遍历 4.代码 参 ...

  6. Uva 10048 - Audiophobia (Floyd变形)

    题目链接 https://vjudge.net/problem/UVA-10048 [题意] 输入一个C个点,S个边(C<=100,S<=1000)的无向图,边权表示该路径上的噪声值,当你 ...

  7. POJ--2391--Ombrophobic Bovines【分割点+Floyd+Dinic优化+二分法答案】最大网络流量

    联系:http://poj.org/problem?id=2391 题意:有f个草场,每一个草场当前有一定数目的牛在吃草,下雨时它能够让一定数量的牛在这里避雨,f个草场间有m条路连接,每头牛通过一条路 ...

  8. 【算法】弗洛伊德(Floyd)算法

    这个算法主要要弄懂三个循环的顺序关系. 弗洛伊德(Floyd)算法过程: 1.用D[v][w]记录每一对顶点的最短距离. 2.依次扫描每一个点,并以其为基点再遍历所有每一对顶点D[][]的值,看看是否 ...

  9. 【POJ/算法】 3259 Wormholes(Bellman-Ford算法, SPFA ,FLoyd算法)

    Bellman-Ford算法 Bellman-Ford算法的优点是可以发现负圈,缺点是时间复杂度比Dijkstra算法高.而SPFA算法是使用队列优化的Bellman-Ford版本,其在时间复杂度和编 ...

  10. 【HDU/算法】最短路问题 杭电OJ 2544 (Dijkstra,Dijkstra+priority_queue,Floyd,Bellman_ford,SPFA)

    最短路径问题是图论中很重要的问题. 解决最短路径几个经典的算法 1.Dijkstra算法 单源最短路径(贪心),还有用 priority_queue 进行优化的 Dijkstra 算法. 2.bell ...

最新文章

  1. 一起谈.NET技术,微软PDC10:大牛谈ASP.NET和C#技术走向
  2. 一阶微分方程的物理意义_MIT—微分方程笔记24 一阶常微分方程组
  3. Linux基础1之磁盘与分区
  4. python比较列表所有字符串_python – 将字符串与数组中的所有值进行比较
  5. 六招让你成职场超男超女
  6. 更新性能服务器图片介绍,图文并茂 讲述企业版Linux性能发展史
  7. 计算机及应用自考好过吗,希望有经验的给我分析一下,我想自考计算机及应用!...
  8. 毕业设计 嵌入式 指纹识别考勤系统设计与实现
  9. aws ecs 通过efs挂载实现动态更新firelens日志配置
  10. 手把手教你进行微信小程序开发案例1---计算器
  11. 20万、50万、100万的算法工程师,有什么区别?
  12. mysql中的临时表怎么用的?
  13. 使用ffmpeg剪辑视频【删除视频头部,尾部,中间,视频拼接,获取视频指定时间截图】
  14. 可变3D卷积|| Deformable 3D Convolution for Video Super-Resolution
  15. linux重装出现cannot load file 5555h,技术员教你解决win7系统重装开机提示cannot load file code:5555h的操作方案...
  16. R语言ggplot2可视化:使用patchwork包的plot_layout函数将多个可视化图像组合起来,ncol参数指定行的个数、byrow参数指定按照行顺序排布图
  17. 架构师的必备素质和成长途径
  18. 我是技术总监,我出来求职,竟然找不到工作!
  19. springboot集成mybatis 使用逆向工程 生成sql语句
  20. R语言动态可视化:制作历史全球平均温度的累积动态折线图动画gif视频图

热门文章

  1. vscode 添加库头文件_VSCode配置C/C++并添加非工作区头文件的方法
  2. 基于fpga的dds函数信号发生器的设计_低频信号发生器
  3. csv文件-读取方式、字典
  4. 桌面怎么新建html文件夹下,创建文件夹的步骤 怎么往新建的文件夹里写东西呀?...
  5. 计算机专业基础 -- Linux系统相关基础知识
  6. 每周学习总结11月9日
  7. STL容器:list双向链表学习
  8. 贪心 Codeforces Round #303 (Div. 2) B. Equidistant String
  9. jdk TreeMap源码解析
  10. pytorch基础API介绍