1013_開門人和關(guān)門人
2019-11-14 12:03:52
供稿:網(wǎng)友
// 1013_開門人和關(guān)門人.cpp : 定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。//題目1013:開門人和關(guān)門人//時(shí)間限制:1 秒內(nèi)存限制:32 兆特殊判題:否提交:5707解決:2882//題目描述://每天第一個(gè)到機(jī)房的人要把門打開,最后一個(gè)離開的人要把門關(guān)好?,F(xiàn)有一堆雜亂的機(jī)房簽到、簽離記錄,請(qǐng)根據(jù)記錄找出當(dāng)天開門和關(guān)門的人。//輸入://測(cè)試輸入的第一行給出記錄的總天數(shù)N ( N> 0 ),下面列出了N天的記錄。 //每天的記錄在第一行給出記錄的條目數(shù)M (M > 0 ),下面是M行,每行的格式為 ////證件號(hào)碼 簽到時(shí)間 簽離時(shí)間 ////其中時(shí)間按“小時(shí):分鐘:秒鐘”(各占2位)給出,證件號(hào)碼是長(zhǎng)度不超過15的字符串。// 輸出:// 對(duì)每一天的記錄輸出1行,即當(dāng)天開門和關(guān)門人的證件號(hào)碼,中間用1空格分隔。 // 注意:在裁判的標(biāo)準(zhǔn)測(cè)試輸入中,所有記錄保證完整,每個(gè)人的簽到時(shí)間在簽離時(shí)間之前,且沒有多人同時(shí)簽到或者簽離的情況。// 樣例輸入:// 3// 1// ME3021112225321 00:00:00 23:59:59// 2// EE301218 08:05:35 20:56:35// MA301134 12:35:45 21:40:42// 3// CS301111 15:30:28 17:00:10// SC3021234 08:00:00 11:25:25// CS301133 21:45:00 21:58:40// 樣例輸出:// ME3021112225321 ME3021112225321// EE301218 MA301134// SC3021234 CS301133// 來源:// 2005年浙江大學(xué)計(jì)算機(jī)及軟件工程研究生機(jī)試真題#include "stdafx.h"#include "iostream"#include "string"#include "stdio.h"#include "algorithm"using namespace std;struct person{ string id , arrive , leave;}stuff[100]; bool arrive(person a,person b){ return a.arrive < b.arrive;}bool leave(person a,person b){ return b.leave < a.leave;}int main(){ int N,M; while(cin>>N){ while(N--){ cin>>M; for(int i = 0;i<M;i++){ cin>>stuff[i].id>>stuff[i].arrive>>stuff[i].leave; } sort(stuff,stuff+M,arrive); //不是 M-1 cout<<stuff[0].id<<" "; sort(stuff,stuff+M,leave); cout<<stuff[0].id<<endl; } } return 0;}/*1.定義結(jié)構(gòu)體數(shù)組時(shí)不要和前面的結(jié)構(gòu)體名一樣*/