題目敘述

考試時間所剩不多,你能夠把握剩下時間完成所有題目嗎? 給你現在時間以及考試終止時間,請你判斷還剩下多少時間可以做題目。

輸入說明

輸入有兩行,第一行表示現在時間,第二行表示考試終止時間。時間的格式為 HH:MM:SS (時:分:秒),終止時間永遠比現在時間晚,但兩者時間差不會超過一天(24小時)。(請注意:兩者的時間點不一定都在同一日。)

輸出說明

請輸出距離考試結束還有多久時間,以 HH:MM:SS 表示。

Sample Input

14:00:00
10:00:00

Sample Output

20:00:00

出處

95建中資訊培訓模擬試題一(Prob 1)

OJ連結


題解

這題基本上就是考驗大家怎麼把輸入讀進來,如果是傳統的 C 語言的話,由於有格式化輸入 scanf 世界會變得比較輕鬆些。如果把所有時間都轉換成秒來計算的話,會比較簡單。

/* by tmt514 */
#include <cstdio>

int read_input() {
    // 讀取輸入並且轉換成秒數。
    int h, m, s;
    scanf("%d:%d:%d", &h, &m, &s);
    return (h*60+m)*60+s;
}

void output(int sec) {
    printf("%02d:%02d:%02d\n", sec/3600, sec/60%60, sec%60);
}

int main() {
    int A = read_input();
    int B = read_input();
    if (A >= B) {
        // 隔天了。
        B += 86400;
    }
    output(B-A);
    return 0;
}

後記

這個時間序應該是高三上學期的時候,當時高二進了選訓營,學了很多很多東西。 高三校內初選以後,在彭天健老師和林淑玲老師的協助下,參與了資訊校隊培訓的工作。 剛好那個時候,北大的 OJ 有釋出版可以玩。我就下載了一套拿來架在自己家裡的主機裡面,並嘗試放了一些題目,邀請大家一起來寫。印象中當年校內預賽的題目是彭天健老師出的,在第一場練習賽之前就先放了預賽題目(TIOJ 1003~1008)讓大家練習。而這題 TIOJ 1009 應該就是正式放上的第一題了吧哈哈~

更早之前應該還有出過一套資訊社高二選幹部的演算法考試。那時候還沒有 OJ 可以用,克難地跟 ianchou 用 PHP 架了簡單的評分系統(從現在看起來應該到處都是漏洞哈哈)。可惜我現在一時之間找不到資料。以後有機會再補上當年那套題目吧~

本文由卡恩(tmt514)撰寫。 本站使用 GasbyJS 搭配 Bulma 製作,其原始碼為 MIT 授權。 網站內容除了題源以外,若無特別說明皆為創用 CC-BY-NC-SA 4.0 授權。 題源部份若有版權爭議還請與我聯繫,感恩。