HDU1036 Average is not Fast Enough!

HDU1036 Average is not Fast Enough!_第1张图片

这里写图片描述

这里写图片描述

HDU1036 Average is not Fast Enough!_第2张图片

这道题刚开始没读懂题意。。其实搞懂题意后还是很简单的。。
英语硬伤。。。

意思是说有2个section, 一个用时 0:23:21 另一个用时 0:25:01 (第一个例子),然后求这两个时间的平均值。注意单位,还有时间输入不能使用整型,应该用char型,因为可能会输入’-‘。

#include 
using namespace std;

int main()
{
    int n;
    double d;
    scanf("%d %lf",&n,&d);
    int num;
    while((scanf("%d",&num)) != EOF)
    {
        int i;
        char h,m1,m2,s1,s2;
        int time = 0;
        int flag = 1;
        for(i = 1; i <= n; i++)
        {
            getchar();
            scanf("%c:%c%c:%c%c",&h,&m1,&m2,&s1,&s2);
            if(h == '-')
            {
                flag = 0;
                continue;
            }
            else
            {
                time += (h-'0')*3600 + ((m1-'0')*10 + (m2-'0'))*60 + (s1-'0')*10 + (s2-'0');
            }
        }
        printf("%3d: ",num);
        if(flag==0)
        {
            printf("-\n");
        }
        else
        {
            int t = (int)((time/d) + 0.5);
            printf("%d:%02d min/km\n",t/60,t%60);
        }
    }
    return 0;
}

你可能感兴趣的:(ACM)