leetcode1360:日期之间隔几天
2024-01-03 12:31:13
题目
请你编写一个程序来计算两个日期之间隔了多少天。
日期以字符串形式给出,格式为 YYYY-MM-DD,如示例所示。
示例 1:
输入:date1 = “2019-06-29”, date2 = “2019-06-30”
输出:1
示例 2:
输入:date1 = “2020-01-15”, date2 = “2019-12-31”
输出:15
提示:
给定的日期是 1971 年到 2100 年之间的有效日期。
python代码
class Solution:
def daysBetweenDates(self, date1: str, date2: str) -> int:
# 计算每个日期与1970-12-30的间隔,然后相减
spa1 = self.space(date1)
spa2 = self.space(date2)
return abs(spa1 - spa2)
def space(self, date):
monthday = [31,28,31,30,31,30,31,31,30,31,30,31]
year, month,day = year, month, day = int(date.split('-')[0]),int(date.split('-')[1]),int(date.split('-')[2])
# 间隔年份为[1970.year - 1],同时,加上闰年多出来的天数
days = 0
days += (year - 1970-1)*365 + (year-1-1968)//4
days += sum(monthday[:month-1])
if year%400 == 0 or (year % 4 == 0 and year % 100 !=0 ) and month > 2:
day += 1
days += day
return days
文章来源:https://blog.csdn.net/bulling/article/details/135311067
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!