1、题目描述
如果一个日期中年月日的各位数字之和是完全平方数,则称为一个完全日期。
例如:2021年6月5日的各位数字之和为2+0+2+1+6+5=16,而16是一个完全平方数,它是4的平方。所以2021年6月5日是一个完全日期。
请问,从2001年1月1日到2021年12月31日中,一共有多少个完全日期?
2、解析
计算从2001年1月1日到2021年12月31日之间有多少个“完全日期”,即日期中年、月、日的各位数字之和是一个完全平方数的日期。
20010101到20211231最大数位和是30,最小数位和是5,所以可以确定能满足的平方数只有9,16,25。首先将可能的完全平方数(9、16、25)存储在列表ls中。然后,使用datetime模块中的datetime和timedelta类来遍历从2001年1月1日到2021年12月31日的所有日期。在每个日期上,计算年、月、日的各位数字之和,如果和在ls列表中,则计数器c加1。最后输出c的值,即完全日期的数量。
3、python代码
import datetime
ls=[9,16,25]
c=0
date1=datetime.datetime(2001,1,1)
d=dateti服务器托管网me.timedelta(days=1)
while date1.year!=2022:
if sum(map(int,str(date1.year)))+sum(map(int,str(date1.month)))+su服务器托管网m(map(int,str(date1.day))) in ls:
c+=1
date1+=d
print(c)
4、运行结果
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: 鸿蒙HarmonyOS实战-ArkUI组件(Button)
一、Button Button(按钮)是一种常见的用户界面控件,通常用于触发操作或提交数据。Button 拥有文本标签和一个可点击的区域,用户点击该区域即可触发相应的操作或事件。 Button 的主要功能有: 触发操作:用户点击 Button 可以触发相应的操…