试题 历届真题 时间显示(python)

问题描述

问题分析

这个问题主要涉及到的是取余和取整的问题,同时需要注意的是数据的规模有1018,在C语言中这是一个大数问题,但是在python中则不会太复杂(python支持高精度),所以简单的循环和注意一下输出的格式就能AC。
不过需要注意的是1 秒=1000 毫秒,而不是60毫秒。

代码实现

n = int(input())


# 先转换为秒为单位

n = n//1000

# 除去天
day = 24*60*60

n = n%day

# 开始计算秒、分、时

s = n%60
n = n//60

m = n%60
n = n//60

h = n

def special_print(a):
    if a<10:
        print("0%d"%a,end="")
    else:
        print(a,end="")

special_print(h)
print(":",end="")
special_print(m)
print(":",end="")
special_print(s)

测试结果

总结

总体来说python遇到这种问题还是占优势,C/C++可能需要手写高精度除法。不过也要注意输出的格式。
(3分钟解决)

posted @ 2022-03-11 18:10  律四  阅读(74)  评论(0编辑  收藏  举报