博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj - 2240 Arbitrage
阅读量:7065 次
发布时间:2019-06-28

本文共 1196 字,大约阅读时间需要 3 分钟。

同样是套汇问题,这题要简单些,我为了多练,换成Floyd算法了。Floyd最大的优点就是写起来简单。

1 #include 
2 #include
3 int m,n,cas=1; 4 char name[35][40]; 5 double rate[30][30]; 6 int find(char *s) 7 { 8 for(int i = 0; i < n; i++) 9 if(!strcmp(s,name[i]))10 return i;11 return -1;12 }13 bool Floyd()14 {15 int i,j,k;16 for(k = 0; k < n; k++)17 for(i = 0; i < n; i++)18 for(j = 0; j < n; j++)19 if(rate[i][k] * rate[k][j] > rate[i][j])20 rate[i][j] = rate[i][k] * rate[k][j];21 return (rate[0][0] > 1) ?1 :0 ;22 }23 int main()24 {25 int i;26 char t1[40],t2[40];27 double r;28 while(scanf("%d",&n),n)29 {30 memset(rate,0,sizeof(rate));31 for(i = 0; i < n; i++)32 scanf("%s",name[i]);33 scanf("%d",&m);34 for(i = 0; i < m; i++)35 {36 scanf("%s%lf%s",t1,&r,t2);37 rate[find(t1)][find(t2)] = r;38 }39 if(Floyd())40 printf("Case %d: Yes\n",cas++);41 else printf("Case %d: No\n",cas++);42 }43 return 0;44 }

 

转载于:https://www.cnblogs.com/lzxskjo/archive/2012/07/24/2607410.html

你可能感兴趣的文章
前端开发之旅-zopim在线即时聊天客服
查看>>
c++模板实现抽象工厂
查看>>
节日营销!这样搞-App运营日常
查看>>
谁是“少数幸福的人”?
查看>>
坦克大战--Java类型 ---- (2)按键设置和用户名的输入
查看>>
手机操作系统:自主力量能否崛起
查看>>
Shell在大数据时代的魅力:从一道百度大数据面试题想到的点滴
查看>>
说说參数传递(泛型托付)
查看>>
CentOS6.10下安装mysql-5.7.24
查看>>
【C#公共帮助类】 ToolsHelper帮助类
查看>>
八皇后问题
查看>>
切蛋糕
查看>>
关于对于CSS的字体单位
查看>>
TCP协议学习总结(上)
查看>>
敏捷 扑克上的时间估算(转)
查看>>
从JDBC程序看为什么需要Mybatis
查看>>
jQuery Ajax
查看>>
压缩感知中的数学知识:稀疏、范数、符号arg min
查看>>
《JavaScript高级程序设计》笔记
查看>>
刚刚在园里看到的一个简单的做连接字符串的方法.
查看>>