#include<iostream>
#include<string>
#include<fstream>
#include<vector>
using namespace std;
struct record{
string name;
int sign_in;
int sign_out;
};
vector<record>records;
//time:HH:MM:SS
int get_time(const string &time){
int t=0;
size_t l=0,n=2;
string hh=time.substr(l,n);//之前忘了这个n表示长度,开始一直当做下标了,蛋疼
l=3;
string mm=time.substr(l,n);
l=6;
string ss=time.substr(l,n);
cout<<"hh: "<<hh<<" mm: "<<mm<<" ss: "<<ss<<endl;
t=3600*atoi(hh.c_str())+60*atoi(mm.c_str())+atoi(ss.c_str());
return t;
}
int main(){
ifstream cin("data.txt");//一定要及得删除啊亲
int m=0;//record number
string in="",out="";
cin>>m;
records.resize(m);
while(m--){
record rd;
cin>>rd.name>>in>>out;
rd.sign_in=get_time(in);
rd.sign_out=get_time(out);
records.push_back(rd);
}
size_t in_index=0,out_index=0;//开门关门用户所在记录的index
for(size_t i=1;i<records.size();++i){
if(records[i].sign_in<records[in_index].sign_in){
in_index=i;
}
if(records[i].sign_out>records[out_index].sign_out){
out_index=i;
}
}
cout<<records[in_index].name<<" "<<records[out_index].name<<"\n";
system("pause");
}
1006. Sign In and Sign Out (25)
最新推荐文章于 2014-08-19 10:43:39 发布