酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

简单+ 时间限制: 1000ms 内存限制: 128mb 分数:100 oi排行榜得分:14(0.1*分数+2*难度) 循环结构 蓝桥杯省赛集训 描述 小蓝是一名计算机极客,他在记录一些重要的日子时从不注明年月日,而是用一个整数替代,比如 4532,后来人们知道,那个整数就是日期,这个整数表示的日期就是他出生后的第几天。 他出生于:1999−04−30 例如他的日记里记录着获得蓝桥杯国寒总冠军的日子为 7856 这个整数,可以推断出这一天是 2020−10−31,现在需要请你计算出小蓝日记中其他整数对应的日期。 注意:输出的日期格式:yyyy-mm-dd,如:2020−03−21(月和日小于 10 的需要在月和日前补 0 )。 输入描述 输入一个整数 n(5<n<30000) 作为日记中记录的整数,输出这个整数对应的日期(注:按日期格式输出)。 例如:1999−04−30 为第 1 天,1999−05−01 为第 2 天。 输出描述 输出这个整数对应的日期。 样例输入 1 10 样例输出 1 1999-05-09 python不用datetime写

def date_from_int(n): year = 1999 month = 4 day = 30 while n > 0: days_in_month = 0 if month in [1, 3, 5, 7, 8, 10, 12]: days_in_month = 31 elif month in [4, 6, 9, 11]: days_in_month = 30 else: if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0: days_in_month = 29 else: days_in_month = 28 if n > days_in_month: n -= days_in_month month += 1 if month > 12: month = 1 year += 1 else: day += n n = 0 return f"{year}-{month:02}-{day:02}" n = int(input()) print(date_from_int(n)) [2024-08-24 19:05:08 | AI写代码神器 | 516点数解答]

相关提问