2021221 LeetCode刷题 2021218 LeetCode刷题 旋转字符串(难度 :单词规律)(难度 :单词规律)
给你一个字符串 date
,按 YYYY-MM-DD
格式表示一个 现行公元纪年法 日期。请你计算并返回该日期是当年的第几天。
通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一致。
示例 1:
输入:date = "2019-01-09" 输出:9
示例 2:
输入:date = "2019-02-10" 输出:41
示例 3:
输入:date = "2003-03-01" 输出:60
示例 4:
输入:date = "2004-03-01" 输出:61
class Solution { public int dayOfYear(String date) { int year = Integer.parseInt(date.split("-")[0]); int mm = Integer.parseInt(date.split("-")[1]); int dd = Integer.parseInt(date.split("-")[2]); int[] days = new int[]{31,0,31,30,31,30,31,31,30,31,30,31}; if((year%4 == 0&&year%100 !=0) || year%400 == 0){ days[1] = 29; }else{ days[1] = 28; } if(mm ==1){ return dd; } for(int i = 0;i< mm-1;i++){ dd+=days[i]; } return dd; } }
执行结果:
通过
显示详情
添加备注
执行用时:14 ms, 在所有 Java 提交中击败了44.89%的用户
内存消耗:38.6 MB, 在所有 Java 提交中击败了90.51%的用户
通过测试用例:10957 / 10957
本文来自博客园,作者:skystrivegao,转载请注明原文链接:https://www.cnblogs.com/skystrive/p/15717426.html
整理不易,如果对您有所帮助 请点赞收藏,谢谢~