但实际上,这传说中的千年对称日其实并非千年一遇,我运用简单的Python编程计算了未来千年内的所有对称日。
显然这是一个判断字符串是否回文的问题,只不过该字符串为日期。直接利用暴力求解的方法,遍历这一千年,并判断每一个日期是否回文。
import datetime
start=datetime.datetime(2020,2,2)
end=datetime.datetime(3020,2,2)
count=0
for i in range(1,(end-start).days+1):
days=str(start+datetime.timedelta(days=i))
if days.replace("-","")[:8]==days.replace("-","")[:8][::-1]:
print(days[:10])
count+=1
print(count)
程序输出得到未来千年内还会有35个对称日,最近的一个对称日是
2021-12-02
另外还有以下2030-03-02,2040-04-02,2030-03-02,2040-04-02等等,适龄青年们如果错过了2020-02-02,不妨在2021-12-02定下终身~