1006 Sign In and Sign Out (25 分)

#include <stdio.h>


typedef struct pNode {
    char id[20];
    int hh, mm, ss;
}pNode;

bool great(pNode a, pNode b) {
    if(a.hh != b.hh) return a.hh > b.hh;
    if(a.mm != b.mm) return a.mm > b.mm;
    return a.ss > b.ss;
}

int main(int argc, char *argv[]) {
    pNode temp, ans1, ans2;
    int M;
    scanf("%d", &M);
    ans1.hh = 24, ans1.mm = 60, ans1.ss = 60;
    ans2.hh = 0, ans1.mm = 0, ans1.ss = 0;
    for(int i=0; i<M; i++) {
        scanf("%s %d:%d:%d", temp.id, &temp.hh, &temp.mm, &temp.ss);
        if(great(temp, ans1) == false) ans1 = temp;
        scanf("%d:%d:%d", &temp.hh, &temp.mm, &temp.ss);
        if(great(temp, ans2) == true) ans2 = temp; 
    }
    
    printf("%s %s", ans1.id, ans2.id);
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容