📅  最后修改于: 2023-12-03 14:56:07.984000             🧑  作者: Mango
当我们需要对多个时间进行累加或比较时,往往需要将它们转换成秒的形式进行处理。本文主要介绍如何将给定的 n 个持续时间转换成秒,并进行相关操作。
输入为整数 n 和 n 个字符串,字符串表示一段持续时间,格式为 "hh:mm:ss",其中 "hh" 表示小时数,"mm" 表示分钟数,"ss" 表示秒数。输入满足 1 <= n <= 10000。
输出为一个整数,表示 n 个持续时间的总秒数。
3
01:02:03
03:04:05
05:06:07
28140
将每个持续时间转换成秒的形式,然后将其累加即可。
def time_to_seconds(time_str):
# 将 "hh:mm:ss" 形式的字符串转换成秒数
h, m, s = map(int, time_str.split(':'))
return h * 3600 + m * 60 + s
n = int(input())
total_seconds = 0
for i in range(n):
time_str = input()
total_seconds += time_to_seconds(time_str)
print(total_seconds)
转换成秒的复杂度为 O(1),累加 n 个时间的复杂度为 O(n),因此总时间复杂度为 O(n)。空间复杂度为 O(1)。