問題描述 你一個字符串 time ,格式為 hh:mm(小時:分鐘),其中某幾位數(shù)字被隱藏(用 ? 表示)。有效的時間為 00:00 到 23:59 之間的所有時間,包括 00:00 和 23:59 。替換 time 中隱藏的數(shù)字,返回你可以得到的最晚有效時間。 輸入:time = 2?:?0” 輸出:”23:50 解決方案 按照順序逐位判斷 對于小時的第一位如果為?,則有兩種不同的情況: 小時的第二位在幾種情況中 ('0','1','2','3',) ,則小時第一位取2 小時的第二位不在幾種情況中,則小時的第一位只能取 1 對于小時的第二位如果為 ? 也有兩不同的情況: 小時的第一位在此情況中('0','1'),則小時的第二位取9為最晚時間 若小時的第一位為2,則此時小時的第二位取3為最晚時間 對于分鐘的二位如果為??,則第一位取5第二位取9 代碼清單 1替換 time 中隱藏的數(shù)字,返回你可以得到的最晚有效時間。
結(jié)語 通過討論有幾種情況來完成這道題,因為此題可能出現(xiàn)的種類不多,便可以只用這種方法,若出現(xiàn)情況較多的題目,這種方法便不可行,需要一種更簡便更直接的方法解決此類題。 實習(xí)編輯:王曉姣 作者:查萌雨、趙柔、岳進(jìn) |
|