当前位置: 代码迷 >> 综合 >> leetcode(1154)一年中的第几天
  详细解决方案

leetcode(1154)一年中的第几天

热度:43   发布时间:2023-12-26 13:48:54.0

给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天

class Solution {public int dayOfYear(String date) {int year = Integer.parseInt(date.substring(0,4));int mouth = Integer.parseInt(date.substring(5,7));int day = Integer.parseInt(date.substring(8));int[] days = {31,28,31,30,31,30,31,31,30,31,30,31};// 对400取余是保留类似于2000年的闰年// 对100取余不等于0 是为了剔除1900这样的平年if(year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)){days[1]++;}int res=0;for(int i=0;i<mouth-1;i++){res += days[i];}return res + day;}
}