您的位置:首页 > 其它

1006 Sign In and Sign Out (25)

2017-07-27 11:56 459 查看
给你每个人的ID,出入时间,最早进来的人开门,最晚出去的人关门,让你输出开门和关门的人的ID

建一个结构体储存ID和出入时间,然后两次排序,输出最早进来的人的ID和最晚出去的人的ID就行了

#include <cstdio>
#include <vector>
#include <string>
#include <cstring>
#include <cstdlib>
#include <iostream>
#include <algorithm>
#define INF 0x3fffffff

using namespace std;

struct person
{
char id[20];
char intime[20];
char outtime[20];
};

int cmp1(person a,person b)
{
return strcmp(a.intime,b.intime)<0;
}

int cmp2(person a,person b)
{
return strcmp(a.outtime,b.outtime)>0;
}

int main()
{
int n;
person p[1005];
memset(p,0,sizeof(p));
cin>>n;
for (int i=0;i<n;i++)
{
cin>>p[i].id>>p[i].intime>>p[i].outtime;
}
sort(p,p+n,cmp1);
cout<<p[0].id<<' ';
sort(p,p+n,cmp2);
cout<<p[0].id;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: