• 开门人和关门人


    题目描述

    每天第一个到机房的人要把门打开,最后一个离开的人要把门关好。现有一堆杂乱的机房签到、签离记录,请根据记录找出当天开门和关门的人。

    输入

    测试输入的第一行给出记录的总天数N ( 0<N<=20 ),下面列出了N天的记录。 
    每天的记录在第一行给出记录的条目数M (0< M <=1000 ),下面是M行,每行的格式为 
    证件号码 签到时间 签离时间 
    其中时间按“小时:分钟:秒钟”(各占2位)给出,证件号码是长度不超过15的字符串。

    输出

    对每一天的记录输出1行,即当天开门和关门人的证件号码,中间用1空格分隔。 
    注意:在裁判的标准测试输入中,所有记录保证完整,每个人的签到时间在签离时间之前,且没有多人同时签到或者签离的情况。

    样例输入

    1
    3
    CS2322231 11:30:18 19:00:13
    SC2421324 07:00:00 15:35:55
    CS2401139 22:45:00 22:58:40

    样例输出

    SC2421324 CS2401139

    提示

    一:为方便比较,读到每个时间后,将其时分秒表示形式转化为秒数。之后保存当前最大和最小分别对应地几个人即可。

    二:直接比较字符串大小

     1 #include <cstdio>
     2 #include <vector>
     3 #include <string.h>
     4 #include <algorithm>
     5 
     6 using namespace std;
     7 
     8 struct people
     9 {
    10     char name[20];
    11     char come[10];
    12     char go[10];
    13 };
    14 
    15 bool cmp1(people a,people b)
    16 {
    17     return strcmp(a.come,b.come)<0;
    18 }
    19 
    20 bool cmp2(people a,people b)
    21 {
    22     return strcmp(a.go,b.go)>0;
    23 }
    24 
    25 int main()
    26 {
    27     int n,m;
    28     scanf("%d",&n);
    29     vector<people> vi;
    30     while(n--)
    31     {
    32         scanf("%d",&m);
    33         int i;
    34         for(i=0;i<m;i++)
    35         {
    36             people k;
    37             scanf("%s %s %s",k.name,k.come,k.go);
    38             vi.push_back(k);
    39         }
    40         sort(vi.begin(),vi.end(),cmp1);
    41         printf("%s ",vi[0].name);
    42         sort(vi.begin(),vi.end(),cmp2);
    43         printf("%s
    ",vi[0].name);
    44         vi.clear();
    45     } 
    46     return 0;
    47 }

     

  • 相关阅读:
    sqlmap注入分类
    sqlmap简单中文说明
    【Python Learning第一篇】Linux命令学习及Vim命令的使用
    模拟退火算法从原理到实战【基础篇】
    平面上给定n条线段,找出一个点,使这个点到这n条线段的距离和最小。
    使用VMWareWorkstation10搭建学习环境笔记
    洛谷P1313 计算系数【快速幂+dp】
    浅析Numpy.genfromtxt及File I/O讲解
    持续交付中高效率与高质量
    持续集成CI与自动化测试
  • 原文地址:https://www.cnblogs.com/jiamian/p/10639944.html
Copyright © 2020-2023  润新知