|  | 
 
| 题意:一个人打算在五个国家之间进行旅游(一个国家可以去多次,比如: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[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);
 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];
 30                 m=(int)(m*100+0.5);
 31                 m=m/100;
 32             }
 33             printf("%.2lf\n",m);
 34         }
 35     }
 36     return 0;
 37
 38 }
 | 
 | 
| 
 |