python 蓝桥杯模拟赛 时间计算

 

不知天上宫阙,今夕是何年。

对于完美日期yyyy/mm/dd,wlxsq的定义是:

年月日中均没有出现数字4,
年月日的数位之和是8的倍数
例如:2020/02/02 就是一个完美日期,没有出现数字4,且数位之和是8的倍数。

wlxsq想知道从2020/02/22开始,第88个完美日期是哪个?
 

#设置初始值
y = 2020
m = 2
d = 2
#设置俩个月份,能被4整除的年份二月份有29天
day_1 = [31,28,31,30,31,30,31,31,30,31,30,31]
day_2 = [ 31,29,31,30,31,30,31,31,30,31,30,31]
ans = 0
#查找第88个
while ans < 88:#排除包含 4 的年月日if '4' not in str(y) and '4' not in str(m) and '4' not in str(d):#获取年月日单独分开数字之和if (int(str(y)[0])+int(str(y)[1])+int(str(y)[2])+int(str(y)[3])+int(str(m).zfill(2)[0])+int(str(m).zfill(2)[1])+int(str(d).zfill(2)[0])+(int(str(d).zfill(2)[1]))) % 8 == 0:ans += 1print("第",ans)print(y, m, d)#找不到,天书加一d += 1#闰年if y % 4 == 0:#是否天数大于月份应存在数if d >day_2[m-1]:m += 1d = 1#非闰年if y % 4 != 0:if d >day_1[m-1]:m += 1d = 1if m > 12:m = 1y += 1

如何有错误的话欢迎指出,会马上改正,非常少感谢。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部