b882: 溢位 の OωO學長?
標籤 : 算術運算子
通過比率 : 84% (161 人 / 191 人 ) (非即時)
評分方式:
Tolerant

最近更新 : 2018-03-13 23:59

內容

  西元2016年09月24日上午),「鈴~鈴~鈴~」,在這恬靜的星期六早晨並未受如此吵鬧的鬧鐘給打攪,主要原因是因為"OωO學長"實在是太晚起床了,導致鬧鐘為了對嚴重超時工作一事表達深深地不滿而進行沉默的罷工,現在時間 08:55 ,"OωO學長"才剛剛起床。在這其實似乎已經不太適合被稱為「早晨」的時間點上,仍然瞇著眼睛視野內一片矇矓的"OωO學長"勉強以針孔成像原理試圖看清楚鬧鐘上所顯示的時間,在平均海平面上銫133原子基態電子躍遷還未滿 9192631770 個週期(那個就是1秒的定義)之時,"OωO學長"突然奮力起身,沒錯,直到現在"OωO學長"才終於算是真正的起床,因為到剛剛為止"OωO學長"都是以側躺的姿勢望向遠方桌上的鬧鐘,說"OωO學長"為「懶惰」的代名詞真的一點也不為過,不過如此懶惰的"OωO學長"竟然起床了!?又過了不到 1 個影格的時間,「碰!」,鬧鐘被消滅了,在此更正一下方才的說法,畢竟那太不真實了,實際情況如下,鬧鐘被不知何時移動到書桌前的"OωO學長"以仰角45°丟出門外並且憑藉著萬有引力在空中劃出一個完美的拋物線,再次更正,其實只有半個拋物線,因為鬧鐘的初速實在太快了,以至於無法順利穿越房門反而擊中門框上方的牆壁,剛才的巨響就是鬧鐘猛烈撞擊牆壁的聲音。不過把事情挪回根本,究竟是什麼原因使得平常遊手好閒、笑臉迎人、和藹可親(?)的"OωO學長"做出如此過激的行為呢?這就要從昨天開始說起... ...

 

  西元2016年09月23日上午),距離「921集集大地震」已經經過了 7 年又 2 天了,不過那似乎並不是什麼多大的重點;距離「106學年度大學學科能力測驗(也就是所謂的『學測』)」剩餘 119 天,這好像也不是很重要,不對!這超級重要啊!那個意思是對"OωO學長"丟鬧鐘一事毫無關聯,絕對不是在說「學測」什麼的不重要唷;剛好再過 100 天就到西元 2017 年了,不用數了,就是這麼剛好,以免浪費寶貴的作答時間,雖然很想在此向各位說聲「新年快樂!」,但那也是 100 天之後的事了;那麼,究竟這天對"OωO學長"來說是個怎麼樣的日子呢?這一天對於"OωO學長"來說可以說是人生中為數不多的重要日子呢!

 

  西元2016年09月23日晚上),「嗡...」,為了怕有人誤會在此先澄清一下,這當然與石灰水毫無關聯,與那些翅膀會超自然震動好興奮(X)發出高頻聲的動物比如說蚊子、蒼蠅、蜜蜂、蜂鳥等等,一點關係也沒有,那個聲音是"OωO學長"的手機放置在學校座位上震動所發出的聲音,現在時間 20:24 ,由於"OwO學長"和另一名"Y學長"正在用班上的電子講桌玩一款名為「Hacker Experience」的駭客遊戲,因為該遊戲是全英文的遊戲,所以對於高中生活至今為止的 12 次段考中僅有 1 次英文是及格的"OωO學長"來說很明顯地這並不是一款能夠在短時間內就能馬上輕鬆上手的遊戲,因此"OωO學長"選擇直接無視認真勤奮工作的手機。其實那只是"OωO學長"選擇無視手機的一半原因,另一半的原因是因為"OωO學長"已經知道手機為什麼會震動,所以"OωO學長"故意假裝不知道有這回事,那麼究竟是什麼事呢?在 3 分鐘前,一名"Σ學長"剛從據說是黑箱作業的「板中數學培訓」回來班上晚自習,由於「板中數學培訓」的指導老師之一就是"OωO學長"的班導,所以"Σ學長"手中握有某件事的重要資料,在此就不賣關子了,那份重要的資料就是「105學年度全國高級中學學科能力測驗模擬考試(簡稱『一模』)」的成績單!"OωO學長"的手機震動的原因正是班導傳送了萬惡的一模成績單到班上 message 的群組,至於對外宣稱自己沒有行動網路的"OωO學長",是怎麼在學校的 wi-fi 只在早自習、下課、午休、放學開放的情況下在任何時刻都能接收學校的 wi-fi 呢?那也就不是那麼重要了~

 

   西元2016年09月24日上午),時間回到"OωO學長"將鬧鐘丟出後的這個時間點,"OωO學長"看著地上仍然持續運用排除相對論在外自身依舊有著每 2 個月就會誤差 1 秒的計秒器運轉的鬧鐘持續計秒著,心裡正想著這樣是否太過於慘忍的"OωO學長"默默地走出房門做盥洗的動作,似乎是表現出一副不想去思考這種事的行為。等等,各位一定會想問說這樣根本就沒解釋到為什麼"OωO學長"要丟鬧鐘啊!主要原因當然是和昨天發的一模成績單有關啦~雖說那只是一次模擬考的成績而已,但卻常常聽到有這麼一種傳聞說通常第一次模考的成績是和實際成績最接近的模考成績,暫且不論這個傳聞的可信度有多少,至少"OωO學長"實在是很不滿意自己的一模成績,"OωO學長"第一次模考成績為 55 級分,這個成績能夠填哪些資訊相關科系呢?說實在的這個"OωO學長"自己也不知道,因為"OωO學長"實在是沒想到自己的模考成績會低到如此的地步。回到丟鬧鐘一事,現在終於要正式說明為何"OωO學長"要丟鬧鐘了,還記得當初"OωO學長"丟鬧鐘的時間嗎?沒錯,就是 08:55 ,就是那個 55 分,還沉浸在一模失意的"OωO學長",再加上才剛起床所以起床氣還未消退,總總原因導致了這場鬧鐘慘劇。盥洗完畢的"OωO學長"將鬧鐘撿起放回書桌上,重新調整明天鈴響的時間,希望明天鬧鐘不要因為今天的事而生悶氣進而決定罷工到底... ...

 

   西元2016年09月25日上午),「鈴~鈴~鈴~」,在這悠閒的星期日上午也未受如此吵鬧的鬧鐘給破壞,原因當然不是因為鬧鐘為了昨天的事而生悶氣,單純只是"OωO學長"太晚起床而已,只是鬧鐘只要超過設定響鈴時間 1 小時就會進行沉默的罷工,說白話點就是不會再響鈴的意思,現在時間 09:13 ,"OωO學長"還沒正式地起床。"OωO學長"只要到了假日,其起床時間的範圍從 6:30 ~10:30 都有可能,看來這週末是屬於比較晚起的那種,大概是得知一模成績之後暫且不想管任何事情的心理間接表現在日常生活上吧,至於鬧鐘存在的意義嘛,這就不是多大的重點了。"OωO學長"用著與昨天幾乎相同的姿勢躺在床上望向遠方書桌上的鬧鐘,過了千萬兆兆兆普朗克時間(這大約是 0.54 秒),「碰!」,鬧鐘再度被消滅了,亦即鬧鐘再度被"OωO學長"丟出並擊中相同的牆壁,這次又是什麼原因使得"OωO學長"又再度做出如此過激的行為呢?最主要的原因當然還是和一模成績有關聯啦~只不過這次"OωO學長"並不是看見 55 分而是看到了 73 分!為什麼看見 73 分也會讓"OωO學長"的火氣冒上來呢?因為昨天晚上補習時聽說 北大附中 一模校排第一就是 73 級分,而 板橋高中 一模校排第一只有 71 級分,這不就等於自毀「新北第一高中」的招牌嗎?又因為剛睡醒起床氣依舊還未消退,所以發生了這場二度鬧鐘慘劇。相信各位比較在意的是為何鬧鐘上會顯示 73 分這種極度不合理的數字?這點"OωO學長"在丟鬧鐘之後也注意到了,撿起似乎還殘留一口氣的鬧鐘,準備開始認真研究這不正常運作的鬧鐘... ...

 

  西元2016年09月25日下午),經過一整個上午的研究,"OωO學長"終於搞懂為什麼鬧鐘會顯示不合理的數字了,原因就在於昨天的鬧鐘慘劇似乎剛好撞毀了鬧鐘的進位系統,或許說是半毀比較貼近實際情況,因為鬧鐘現在是處於一個下一秒不知會不會進位的情況,當初早上的時間是 09:13 ,由於分鐘沒有進位的緣故所以鬧鐘顯示的時間是 08:73 ,這就是鬧鐘會顯示 73 分的原因。鑒於鬧鐘只能夠顯示 2 位數,為了避免鬧鐘無法顯示的問題,"OωO學長"將鬧鐘拆開並將裡頭的電路板連接上 arduino 試圖將鬧鐘所顯示的錯誤時間轉移到電腦上,沒錯,雖然前幾段沒有明講,但各位應該都能隱約猜出來"OωO學長"的鬧鐘是電子式的鬧鐘唷~將鬧鐘連結上電腦之後,"OωO學長"發現雖然鬧鐘本身只會顯示小時與分鐘,但在其內部其實還有一個紀錄秒的變數,這就又更激起了"OωO學長"研究這這鬧鐘的興趣了,"OωO學長"將這 3 個變數顯示到電腦上後又開始積極地研究。又經過一整個下午的研究,"OωO學長"歸納出鬧鐘進位系統半毀對鬧鐘所造成的影響:「若下一秒之後 3 個變數中其中 1 個變數可以進位,則在下一秒後該變數可能會進位也可能不會進位,其中分鐘與秒的變數是以 60 進位制分別進位成小時與分鐘,小時的變數是以 24進位制進位成天,由於鬧鐘並沒有天這個變數,故鬧鐘會直接捨棄小時所進位後的數值。(EX:假設這 3 個變數分別對應到小時、分鐘、秒的數值為 25 14 119 ,以下是下一秒後此 3 個變數所可能呈現的其中 2 種情況 1 14 120、25 16 0)」。另外,"OωO學長"還發現了鬧鐘的安全裝置,其具體運作方式如下:「雖然鬧鐘本身的變數類型為 32 位元無號整數型,可能是為了安全起見,亦有可能是為了相容性的問題,只要 3 個變數中有 1 個變數的數值超過了 32 位元有號整數型的上限(就是傳聞中的 2147483647 ),該變數就會被安全裝置強制進位,就算現在的進位系統出了點問題,安全裝置依舊會重複重啟進位系統直到該變數進位為止,並且該安全裝置可以保證以上操作可以在 1 秒之內完成。」。為了改正鬧鐘未進位的錯誤,"OωO學長"打算要自己寫一個程式來校正鬧鐘的時間,但是因為有安全裝置的原故導致變數不會有溢位的問題造成程式碼過於簡單以至於懶惰成性的"OωO學長"實在是不太想去思考,而且待會還有英文補習等著"OωO學長",一想到自己為了忙鬧鐘一事而忘了寫英文作文,"OωO學長"又有丟鬧鐘的衝動了!不過那也是後話了... ...

 

(溢位 の OωO學長?.完)

(以上內容半屬虛構.如有雷同或不雷同.敬請見諒!)

輸入說明

輸入只有一行,每一行包含 3 個非負整數 H、M、S,分別代表鬧鐘於電腦上所顯示的小時、分鐘、秒,其中 H、M、S < 231
(為了不使題目複雜化,暫且還是先排除鬧鐘每 2 個月會有 1 秒誤差的情況,亦即假設輸入的時間沒有誤差。)

輸出說明

輸出請符合格式,請依照題意輸出當前正確的時間。
其格式如下: HH:MM:SS , HH 表示當前正確小時, MM 代表當前正確分鐘, SS 表示當前正確的秒,並請以24小時制表示。
小時與分鐘之間以及分鐘與秒之間請輸出一個 ':' (不包含 ' ' ),每個數字皆用 2 位數表示(也就是電子鐘的顯示方式)。

範例輸入
22 20 142
範例輸出
22:22:22
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (10%): 1.0s , <1K
公開 測資點#1 (10%): 1.0s , <1K
公開 測資點#2 (10%): 1.0s , <1K
公開 測資點#3 (10%): 1.0s , <1K
公開 測資點#4 (10%): 1.0s , <1K
公開 測資點#5 (10%): 1.0s , <1K
公開 測資點#6 (10%): 1.0s , <1K
公開 測資點#7 (10%): 1.0s , <1K
公開 測資點#8 (10%): 1.0s , <1K
公開 測資點#9 (10%): 1.0s , <1K
提示 :

24小時制中並沒有 24:00:00 ,只有 00:00:00 唷~~~  OωO

------------------------------------------------------------(我是分隔線)------------------------------------------------------------

其實如果上週沒停課的話,會要各位學弟妹們用 if 轉成12小時制,然後要輸出是 A.M. 或是 P.M. ,當然這也是後話了~~~
最後一筆測資有陷阱,所以卡在 90% 的各位學弟妹們可以先左轉上一題或右轉下一題,如果是學長們卡在 90% 就太不應該了~~~
所以如果不是錯最後一筆測資的各位,就代表你(妳)的邏輯有問題(X)想得還不夠嚴謹周密(O)唷~~~ OωO

標籤:
算術運算子
出處:
板橋高中教學題 [編輯: