1154 一年中的第几天 leetcode

简介: 1154 一年中的第几天 leetcode

给你一个按 YYYY-MM-DD 格式表示日期的字符串 date,请你计算并返回该日期是当年的第几天。


通常情况下,我们认为 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


提示:


date.length ==10

date[4] == date[7] == '-',其他的 date[i] 都是数字。

date 表示的范围从 1900 年 1 月 1 日至 2019 年 12 月 31 日。


   class Solution {

   public:

       int dayOfYear(string date) {

           int day=0;

           int y=atoi(date.substr(0,4).c_str());

           int m=atoi(date.substr(5,2).c_str());

           int d=atoi(date.substr(8,2).c_str());

           switch(m-1)

           {

                   case 11:day+=30;

                   case 10:day+=31;

                   case 9:day+=30;

                   case 8:day+=31;

                   case 7:day+=31;

                   case 6:day+=30;

                   case 5:day+=31;

                   case 4:day+=30;

                   case 3:day+=31;

                   case 2:day+=((!(y%4)&&y%100)||!(y%400))?29:28;

                   case 1:day+=31;    

           }

           return d+day;

       }  

   };//闰年的定义是:(能被4整除且不能被100整除)或者(能被400整除的数)

目录
相关文章
|
SQL 运维 安全
闲鱼交易实时资损防控体系
聊一聊资损防控体系和闲鱼实践
6691 0
闲鱼交易实时资损防控体系
|
消息中间件 缓存 监控
系统稳定性建设实践总结
2020年,注定是个不平凡的一年。疫情的蔓延打乱了大家既定的原有的计划,同时也催生了一些在线业务办理能力的应用诉求,作为技术同学,需要在短时间内快速支持建设系统能力并保障其运行系统稳定性。恰逢年终月份,正好梳理总结下自己的系统稳定性建设经验和思考。
系统稳定性建设实践总结
|
JavaScript 前端开发
获取JavaScript时间戳函数的5种方法
获取JavaScript时间戳函数的5种方法
233 0
|
缓存 Java
Java本地高性能缓存实践问题之使用Caffeine的Cache接口来查找一个缓存元素的问题如何解决
Java本地高性能缓存实践问题之使用Caffeine的Cache接口来查找一个缓存元素的问题如何解决
283 0
|
Java 测试技术 程序员
内存泄漏:深入探讨、识别与防范
内存泄漏:深入探讨、识别与防范
|
10月前
|
人工智能 程序员 测试技术
全网招募 100 位 AI 程序员体验官,感受 DeepSeek 加持下智能编码
通义灵码联合阿里云开发者社区,全网寻找 100 位 AI 程序员体验官,感受 AI 程序员和满血版 Deepseek 加持下的智能编码新功能,体验需求开发、跨语言编程、单元测试自动生成、图生代码等 AI 程序员能力,领取 Cherry 机械键盘、智能手环等奖品。
|
JavaScript Java jenkins
如何利用CentOS7+docker+jenkins+gitee部署springboot+vue前后端项目(保姆教程)
如何利用CentOS7+docker+jenkins+gitee部署springboot+vue前后端项目(保姆教程)
641 0
|
编译器 数据安全/隐私保护 C语言
C++ 之命名空间namespace【详解】
C++ 之命名空间namespace【详解】
336 4
|
资源调度 分布式计算 监控
YARN【工作机制】
YARN【工作机制】