题目描述
解题思路
这题无非就是三种情况,把他给你的三个数字整合成三种情况。用datetime.date转换为时间,当然会有存在不合理的时间datetime.date会报错我们直接就用except加pass跳过。要让时间从早到晚无非就是转换成int然后sorted,排除重复的时间就用set。暴力解法就是有点麻烦但是可以慢慢写出来
代码
import datetime
n=list(map(int,input().split('/')))
riqi=[]
#nianyueri
if n[0]<60:
try:
date=datetime.date(2000+n[0],n[1],n[2])
riqi.append(str(date).replace('-',''))
except:
pass
if n[0]>=60:
try:
date=datetime.date(1900+n[0],n[1],n[2])
riqi.append(str(date).replace('-',''))
except:
pass
#yuerinian
if n[2]<60:
try:
date=datetime.date(2000+n[2],n[0],n[1])
riqi.append(str(date).replace('-',''))
except:
pass
if n[0]>=60:
try:
date=datetime.date(1900+n[2],n[0],n[1])
riqi.append(str(date).replace('-',''))
except:
pass
#riyuenian
if n[2] < 60:
try:
date = datetime.date(2000 + n[2], n[1], n[0])
riqi.append(str(date).replace('-',''))
except:
pass
if n[0] >= 60:
try:
date = datetime.date(1900 + n[2], n[1], n[0])
riqi.append(str(date).replace('-',''))
except:
pass
riqi=sorted(set(riqi))
for i in riqi:
print(datetime.date(int(i[:4]),int(i[4:6]),int(i[6:])))