HDU 1036(平均速度 **)

题意是求出跑了 n 圈每圈 m km 的个人的平均速度。

控制格式,特别注意,题意是输出 -:--:-- 的该人成绩作废,但要把他其他的成绩输进去,不能直接就 break ,输出也就只有一个 - ,而不是与作废圈数相等的 - 。

代码如下:

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int aa,bb,n,no;
 6     double s,sec;
 7     char a[10];
 8     bool f;
 9     scanf("%d%lf",&n,&s);
10     while(~scanf("%d",&no))
11     {
12         sec = 0;
13         f = false;
14         printf("%3d:",no);
15         for(int i = 0; i < n; ++i)
16         {
17             scanf("%s",a);
18             if(a[0]=='-')
19             {
20                 f = true;
21 //                break;
22             }
23             else sec += (a[0]-'0')*3600+(a[2]-'0')*600+(a[3]-'0')*60+(a[5]-'0')*10+(a[6]-'0');
24         }
25         if(f) {puts(" -");continue;}
26         aa = (sec/s+0.5)/60;
27         bb = (int)(sec/s+0.5)%60;
28         printf("%2d:%02d min/km\n",aa,bb);
29     }
30     return 0;
31 }
View Code

猜你喜欢

转载自www.cnblogs.com/Taskr212/p/9556470.html
hdu