HDU1036 Average is not Fast Enough!

原题链接

虽然是简单题,但是读懂题要花更长时间。。而且还有些细节要注意。

#include <stdio.h>
int main(){
    int sectionNumber, t, ok;
    double relayDistance;
    char buf[20];
    int teamNumber, teamSeconds, h, m, s;
    scanf("%d%lf", §ionNumber, &relayDistance);    
    while(scanf("%d", &teamNumber) != EOF){
        t = sectionNumber;
        teamSeconds = 0;
        ok = 1;
        while(t--){
            if(scanf("%d:%d:%d", &h, &m, &s) == 3){
                if(ok) teamSeconds += h * 3600 + m * 60 + s;
            }else{
                ok = 0;
                scanf("%s", buf); //读取缓存
            }
        }
        printf("%3d: ", teamNumber);
        if(!ok) printf("-\n");
        else{
            int temp = int(teamSeconds / relayDistance + 0.5);
            printf("%d:%02d min/km\n", temp / 60, temp % 60);
        }
    }
    return 0;
}


posted on 2014-03-30 13:22  长木Qiu  阅读(174)  评论(0编辑  收藏  举报