PAT 1006 Sign In and Sign Out

1006 Sign In and Sign Out

分數 25

作者?CHEN, Yue

單位?浙江大學

At the beginning of every day, the first person who signs in the computer room will unlock the door, and the last one who signs out will lock the door. Given the records of signing in's and out's, you are supposed to find the ones who have unlocked and locked the door on that day.

Input Specification:

Each input file contains one test case. Each case contains the records for one day. The case starts with a positive integer M, which is the total number of records, followed by M lines, each in the format:

ID_number Sign_in_time Sign_out_time

where times are given in the format HH:MM:SS, and ID_number is a string with no more than 15 characters.

Output Specification:

For each test case, output in one line the ID numbers of the persons who have unlocked and locked the door on that day. The two ID numbers must be separated by one space.

Note: It is guaranteed that the records are consistent. That is, the sign in time must be earlier than the sign out time for each person, and there are no two persons sign in or out at the same moment.

Sample Input:

3
CS301111 15:30:28 17:00:10
SC3021234 08:00:00 11:25:25
CS301133 21:45:00 21:58:40

Sample Output:

SC3021234 CS301133

代碼長度限制

16 KB

時間限制

400 ms

內存限制

64 MB

棧限制

8192 KB

#include<iostream>
using namespace std;
int n;
string start_id,end_id;
int start_h=0x3f3f3f,start_m=0x3f3f3f,start_s=0x3f3f3f,end_h,end_m,end_s;int main(){scanf("%d",&n);string s;int h1,h2,m1,m2,s1,s2;for(int i=0;i<n;i++){cin>>s;scanf("%d:%d:%d",&h1,&m1,&s1);scanf("%d:%d:%d",&h2,&m2,&s2);// 選最早if(h1<start_h){start_h=h1;start_m=m1;start_s=s1;start_id=s;}else if(h1==start_h){if(m1<start_m){start_m=m1;start_s=s1;start_id=s;}else if(m1==start_m){if(s1<start_s){start_s=s1;start_id=s;}}}// 選最晚if(h2>end_h){end_h=h2;end_m=m2;end_s=s2;end_id=s;}else if(h2==end_h){if(m2>end_m){end_m=m2;end_s=s2;end_id=s;}else if(m2==end_m){if(s2>end_s){end_s=s2;end_id=s;}}}}// cout<<start_id<<" "<<end_id<<endl;printf("%s %s\n",start_id.c_str(),end_id.c_str());return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/98483.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/98483.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/98483.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【git】首次clone的使用采用-b指定了分支,還使用了--depth=1 后續在這個基礎上拉取所有的分支代碼方法

要解決當前問題&#xff08;從淺克隆轉換為完整克隆并獲取所有分支&#xff09;&#xff0c;請按照以下步驟操作&#xff1a; 步驟 1&#xff1a;檢查當前遠程地址 首先確認遠程倉庫地址是否正確&#xff1a; git remote -v步驟 2&#xff1a;修改遠程配置以獲取所有分支 默認淺…

蘿卜切丁機 機構筆記

蘿卜切丁機_STEP_模型圖紙免費下載 – 懶石網 機械工程師設計手冊 1是傳送帶 2是曲柄滑塊機構&#xff1f; 擠壓動作

多張圖片生成視頻模型技術深度解析

多張圖片生成視頻模型測試相比純文本輸入&#xff0c;有視覺參考約束的生成通常質量更穩定&#xff0c;細節更豐富 1. 技術原理和工作機制 多張圖片生成視頻模型是一種先進的AI技術&#xff0c;能夠接收多張輸入圖像&#xff0c;理解場景變化關系&#xff0c;并合成具有時間連…

中電金信:AI重構測試體系·智能化時代的軟件工程新范式

AI技術的迅猛發展正加速推動軟件工程3.0時代的到來&#xff0c;深刻地重塑了測試行業的運作邏輯&#xff0c;推動測試角色從“后置保障”轉變為“核心驅動力”。在大模型技術的助力下&#xff0c;測試質量和效能將顯著提升。9月5日至6日&#xff0c;Gtest2025全球軟件測試技術峰…

100、23種設計模式之適配器模式(9/23)

適配器模式&#xff08;Adapter Pattern&#xff09; 是一種結構型設計模式&#xff0c;它允許將不兼容的接口轉換為客戶端期望的接口&#xff0c;使原本由于接口不兼容而不能一起工作的類可以協同工作。 一、核心思想 將一個類的接口轉換成客戶期望的另一個接口使原本因接口不…

線上環境CPU使用率飆升,如何排查

線上環境CPU使用率飆升&#xff0c;如何排查 1.CPU飆升的常見原因 1. 代碼層面問題 死循環&#xff1a;錯誤的循環條件導致無限循環遞歸過深&#xff1a;沒有正確的終止條件算法效率低&#xff1a;O(n)或更高時間復雜度的算法處理大數據集頻繁GC&#xff1a;內存泄漏導致頻繁垃…

《sklearn機器學習——特征提取》

在 sklearn.feature_extraction 模塊中&#xff0c;DictVectorizer 是從字典&#xff08;dict&#xff09;中加載和提取特征的核心工具。它主要用于將包含特征名稱和值的 Python 字典列表轉換為機器學習算法所需的數值型數組或稀疏矩陣。 這種方法在處理結構化數據&#xff08;…

IEEE出版,限時早鳥優惠!|2025年智能制造、機器人與自動化國際學術會議 (IMRA 2025)

2025年智能制造、機器人與自動化國際學術會議 (IMRA2025)2025 International Conference on Intelligent Manufacturing, Robotics, and Automation中國?湛江2025年11月14日-2025年11月16日IMRA2025權威出版大咖云集穩定檢索智能制造、人工智能、機器人、物聯網&#xff08;Io…

C# 基于halcon的視覺工作流-章30-圓圓距離測量

C# 基于halcon的視覺工作流-章30-圓圓距離測量 本章目標&#xff1a; 一、利用圓卡尺找兩圓心&#xff1b; 二、distance_pp算子計算兩圓點距離&#xff1b; 三、匹配批量計算&#xff1b;本章是在章23-圓查找的基礎上進行測量使用&#xff0c;圓查找知識請閱讀章23&#xff0c…

java設計模式二、工廠

概述 工廠方法模式是一種常用的創建型設計模式&#xff0c;它通過將對象的創建過程封裝在工廠類中&#xff0c;實現了創建與使用的分離。這種模式不僅提高了代碼的復用性&#xff0c;還增強了系統的靈活性和可擴展性。本文將詳細介紹工廠方法模式的三種形式&#xff1a;簡單工廠…

Ubuntu 24.04 中 nvm 安裝 Node 權限問題解決

個人博客地址&#xff1a;Ubuntu 24.04 中 nvm 安裝 Node 權限問題解決 | 一張假鈔的真實世界 參考nvm的一個issue&#xff1a;https://github.com/nvm-sh/nvm/issues/3363 異常信息如下&#xff1a; $ nvm install 22 Downloading and installing node v22.19.0... Download…

Java面試-線程安全篇

一、synchronized關鍵字&#xff1a; 基本使用與作用&#xff1a;通過搶票代碼示例&#xff0c;展示了synchronized作為對象鎖&#xff0c;可避免多線程超賣或搶到同一張票問題&#xff0c;保證代碼原子性&#xff0c;同一時刻只有一個線程獲得鎖&#xff0c;其他線程阻塞。底層…

R 語言科研繪圖 --- 其他繪圖-匯總2

在發表科研論文的過程中&#xff0c;科研繪圖是必不可少的&#xff0c;一張好看的圖形會是文章很大的加分項。 為了便于使用&#xff0c;本系列文章介紹的所有繪圖都已收錄到了 sciRplot 項目中&#xff0c;獲取方式&#xff1a; R 語言科研繪圖模板 --- sciRplothttps://mp.…

【數學建模學習筆記】啟發式算法:粒子群算法

零基礎小白看懂粒子群優化算法&#xff08;PSO&#xff09;一、什么是粒子群優化算法&#xff1f;簡單說&#xff0c;粒子群優化算法&#xff08;PSO&#xff09;是一種模擬鳥群 / 魚群覓食的智能算法。想象一群鳥在找食物&#xff1a;每只鳥&#xff08;叫 “粒子”&#xff0…

【Gitlab】Ubuntu 20.04服務器部署Gitlab

寫一個 適用于 Ubuntu 20.04/22.04 的 GitLab 一鍵部署腳本&#xff0c;包括&#xff1a;安裝依賴安裝 GitLab CE配置公網 IP 或域名自動開啟 HTTPS&#xff08;Let’s Encrypt&#xff09;配置防火墻下面是完整腳本&#xff1a;#!/bin/bash# # GitLab 一鍵安裝腳本 # # 1. 檢…

Android 15重磅升級:16KB內存頁機制詳解與適配指南

一、背景隨著Android硬件架構的持續演進&#xff0c;新一代設備開始采用16KB內存頁&#xff08;Page Size&#xff09;機制&#xff0c;逐步替代傳統的4KB內存頁設計。此項底層變更對應用兼容性產生直接影響&#xff0c;特別是對依賴Native層庫、JNI接口或自定義內存管理模塊的…

Mybatis-8 動態SQL

動態SQL-官方文檔 文檔地址 動態 SQL_MyBatis中文網 為什么需要動態SQL 1、動態SQL是MyBatis的強大特性之一 2、使用JDBC或其它類似的框架&#xff0c;根據不同條件拼接SQL語句非常麻煩&#xff0c;例如拼接時要確保不能忘記添加必要的空格&#xff0c;還要注意去掉列表最后一…

PySpark數據輸入

PySpark數據輸入 1.理解RDD對象 2.掌握PySpark數據輸入的2種方法 RDD對象 PySpark支持多種數據的輸入&#xff0c;在輸入完成后&#xff0c;都會得到一個&#xff1a;RDD類的對象 RDD全稱為&#xff1a;彈性分布式數據集&#xff08;Resilient Distributed Datasets&#xff09…

【系統架構設計(16)】軟件架構設計二:軟件架構風格:構建系統的設計模式與選擇指南

文章目錄一、核心思想二、數據流風格&#xff1a;以數據流動為核心的處理模式三、調用返回風格&#xff1a;基于程序調用的層次化組織四、獨立構件風格&#xff1a;基于事件驅動的松耦合架構五、虛擬機風格&#xff1a;提供抽象執行環境的架構模式六、倉庫風格&#xff1a;以數…

MySQL速記小冊(1)

1【Q】&#xff1a;Mysql中的數據排序是怎么實現的&#xff1f;【A】&#xff1a;排序過程中如果字段有索引&#xff0c;則利用索引排序。反之使用文件排序。在文件排序中&#xff0c;如果數據量少則在內存中排序&#xff0c;使用單路排序或雙路排序。如果數據量大則利于磁盤文…