Python 中的時間加法
假設我們有一個字串,它用帶有 am 或 pm 字尾的 12 小時制時間表示,並且還給出了一個整數 n,我們向時間加 n 分鐘,並以相同的格式返回新時間。
因此,如果輸入為 s = "8:20pm" 且 n = 150,那麼輸出為 10:50pm
為解決此問題,我們將遵循以下步驟 -
h、m := 從 s 中讀取小時和分鐘部分
h := h mod 12
如果時間 s 為 'pm',則
h := h + 12
t := h * 60 + m + n
h := t/60 的商,m := t/60 的餘數
h := h mod 24
如果 h < 12,則 suffix := 'am',否則 suffix := 'pm'
h := h mod 12
如果 h 與 0 相同,則
h := 12
返回時間 h:m suffix
讓我們看看以下實現以更好地理解 -
範例
class Solution:
def solve(self, s, n):
h, m = map(int, s[:-2].split(':'))
h %= 12
if s[-2:] == 'pm':
h += 12
t = h * 60 + m + n
h, m = divmod(t, 60)
h %= 24
suffix = 'a' if h < 12 else 'p'
h %= 12
if h == 0:
h = 12
return "{:02d}:{:02d}{}m".format(h, m, suffix)
ob = Solution()
print(ob.solve("8:20pm", 150))輸入
"8:20pm", 150
輸出
10:50pm
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP