题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1217

题目大意:通过货币的转换,来判断是否获利,如果获利则输出Yes,否则输出No。

这里介绍一个STL中的map容器去处理数据,map<string,int>V,M;

现在我目前的理解是将字符串转换成数字,然后就是根据spfa的模板找最短路了。。哇哈哈( ⊙o⊙ )哇

 #include <iostream>
#include <cstdio>
#include <map>
#include <queue>
#include <cstring>
using namespace std;
int n,a;
double Map[][];
const int INF=;
map<string,int>V; int spfa()
{
queue<int>q;
double node[]= {};
int inq[]= {};
node[]=;
inq[]=;
q.push();
while (!q.empty())
{
int s=q.front();
q.pop();
for (int i=; i<=n; i++)
{
//cout<<Map[s][i]<<" "<<node[i]<<endl;
if (node[i]<Map[s][i]*node[s])
{
//cout<<node[i]<<" "<<Map[s][i]<<endl;
node[i]=Map[s][i]*node[s];
if (!inq[i])
{
q.push(i);
inq[i]=;
}
if (node[]>)
return ;
} }
inq[s]=;
}
return ;
}
int main ()
{
char ch[];
int cmp=,q;
while (scanf("%d",&n),n)
{
q=;
V.clear();
for (int i=; i<=n; i++)
for (int j=; j<=n; j++)
Map[i][j]=;
//memset(Map,INF,sizeof(Map));
for (int i=; i<=n; i++)
{
scanf("%s",ch);
if (!V[ch])
V[ch]=++q;
}
scanf("%d",&a);
for (int i=; i<=a; i++)
{
double money;
char ch1[],ch2[];
scanf("%s%lf%s",ch1,&money,ch2);
if (Map[V[ch1]][V[ch2]]<money)
Map[V[ch1]][V[ch2]]=money;
//cout<<Map[V[ch1]][V[ch2]]<<endl;
}
printf ("Case %d: ",cmp++);
if (spfa())
printf("Yes\n");
else
printf ("No\n");
}
return ;
}

最新文章

  1. 勇者斗恶龙UVa11292 - Dragon of Loowater
  2. poj 3734 Blocks
  3. [Android分享] 【转帖】Android ListView的A-Z字母排序和过滤搜索功能
  4. G-nav-01
  5. 【BZOJ】1043: [HAOI2008]下落的圆盘(计算几何基础+贪心)
  6. Bluetooth L2CAP介绍
  7. 详解Oracle创建用户权限全过程
  8. Debian 7 安装 Emacs 24.4
  9. 基于C#的SolidWorks插件开发(1)--SolidWorks API接口介绍
  10. SecureCRT 安装及初始化配置
  11. C语言预处理指令的初步了解
  12. android 巧用资源文件(不断积累)
  13. Linux Apache2 配置介绍
  14. Idea实用快捷键
  15. [UnityShader基础]05.模板测试
  16. Java 中单引号和双引号的区别
  17. C# EditPlus环境设置
  18. tomcat自动缓存的几种解决方式
  19. Android 开发工具类 06_NetUtils
  20. crontab定时执行

热门文章

  1. Qt代码覆盖率code coverage(VS版)
  2. Chrome Extensions API &amp; options
  3. BZOJ 2460 元素(贪心+线性基)
  4. Java入门之:基本数据类型
  5. 响应式布局(rem布局),使用JS动态设置fontsize
  6. BZOJ2178:圆的面积并——题解
  7. React属性用法总结
  8. django 给前端传递HTML内容
  9. python多进程之Process
  10. CORS解决跨域访问问题