标签:des style color java os io strong for
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 4484 Accepted Submission(s): 2042
3 USDollar BritishPound FrenchFranc 3 USDollar 0.5 BritishPound BritishPound 10.0 FrenchFranc FrenchFranc 0.21 USDollar 3 USDollar BritishPound FrenchFranc 6 USDollar 0.5 BritishPound USDollar 4.9 FrenchFranc BritishPound 10.0 FrenchFranc BritishPound 1.99 USDollar FrenchFranc 0.09 BritishPound FrenchFranc 0.19 USDollar 0
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<queue> #include<map> #include<string> using namespace std; const int MX=1<<30; double road[35][35],pay[35]; int n; struct node { int s; double t; }; bool bfs() { int x,i; for(x=1;x<=n;x++) { node a,b; a.s=x; a.t=1.0; memset(pay,0,sizeof pay); pay[a.s]=a.t; queue<node>q; q.push(a); while(!q.empty()) { a=q.front(); q.pop(); for(i=1;i<=n;i++) { if(road[a.s][i]!=0) { b.s=i; b.t=a.t*road[a.s][i]; if(b.s==x&&b.t>1.0) { return true; } if(b.t>pay[i]) { pay[i]=b.t; q.push(b); } } } } } return false; } int main() { int tt=1; while(scanf("%d",&n)!=EOF) { getchar(); if(n==0)break; int i,m; char g[100],f[100]; map<string,int>cur; for(i=1;i<=n;i++) { gets(g); cur[g]=i; } scanf("%d",&m); memset(road,0,sizeof road); double p; for(i=0;i<m;i++) { scanf("%s%lf%s",g,&p,f); if(road[cur[g]][cur[f]]<p) { road[cur[g]][cur[f]]=p; } } /*for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { printf("%0.3lf ",road[i][j]); } printf("\n"); }*/ printf("Case %d: ",tt++); if(bfs()) { printf("Yes\n"); }else{ printf("No\n"); } } return 0; }
HDU1217Arbitrage,布布扣,bubuko.com
标签:des style color java os io strong for
原文地址:http://blog.csdn.net/fljssj/article/details/38554683