本文版权归点A点C和博客园共有,欢迎转载,但必须保留此段声明,并给出原文连接,谢谢合作!!!

zju1058 Currency Exchange

题意:一个人打算在五个国家之间进行旅游(一个国家可以去多次,比如:A->B->C->D->B),国家之间的钱之间都有汇率,求如果这人在旅途中不花钱,只进行钱的转换,最后的钱变为多少

输入:第一行:一个整数t表示测试样例个数;

        第2~6行:各个国家之间的汇率

        接下来开始输入他的旅行过程

        首先输入一个数N表示地点的个数(即使国家相同也看做不同的地点),之后输入N个国家的代号

        当N不为0时,在这组汇率下可以继续输入旅行过程

View Code
 1 #include<stdio.h>
 2 double a[7][7];
 3 int b[12];
 4 int main()
 5 {
 6     int i,j,flag=0,t,n;
 7     double m;
 8     scanf("%d",&t);
 9     while(t--)
10     {
11         if(flag)printf("\n");
12         flag=1;
13         for(i=1;i<=5;i++)
14         for(j=1;j<=5;j++)
15         {
16             scanf("%lf",&a[i][j]);
17         }
18         while(scanf("%d",&n)&&n)
19         {
20             b[1]=1;
21             for(i=2;i<=n+1;i++)
22             {
23                 scanf("%d",&b[i]);
24             }
25             b[n+2]=1;
26             scanf("%lf",&m);
27             for(i=2;i<=n+2;i++)
28             {
29                 m=m*a[b[i-1]][b[i]];
30                 m=(int)(m*100+0.5);
31                 m=m/100;
32             }
33             printf("%.2lf\n",m);
34         }
35     }
36     return 0;
37 
38 }

posted on 2012-10-07 18:05  点A点C  阅读(216)  评论(0编辑  收藏  举报

导航