【LeetCode每日一题】1154. 一年中的第几天(直接计算+调用库函数)

2023-12-31

文章目录

    • [1154. 一年中的第几天](https://leetcode.cn/problems/day-of-the-year/)
          • 方法一:直接计算
            • 思路:
          • 方法二:调用库函数
            • 思路

1154. 一年中的第几天

在这里插入图片描述

方法一:直接计算
思路:

1.根据所给的字符串,分别截取出年月日的信息,转化成整数

2.根据当前年份,判断是否为闰年,是闰年:二月加1

3.之前月份天数之和,最后加上天数的信息

 
public int dayOfYear(String date) {
        int year = Integer.parseInt(date.substring(0, 4));
        int month = Integer.parseInt(date.substring(5, 7));
        int day = Integer.parseInt(date.substring(8));
        //调用substring分别截取出年月日的信息,转化为整数

        int[] monthes = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
        //每个月份的天数
        if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
            ++monthes[1];
        }//如果当前的闰年,二月加1天(直接改变月份字典中的数)

        int ans = 0;
        for (int i = 0; i < month - 1; ++i) {
            ans += monthes[i];//每个月天数之和
        }
        return ans + day;
    }
方法二:调用库函数
思路

1.指定日期字符串的格式

2.解析为 LocalDate 对象

3.返回该日期在其所属年份中的天数

    private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
//定义了一个 DateTimeFormatter 对象,它指定了日期字符串的格式为 "yyyy-MM-dd"

    public int dayOfYear2(String date) {
        return LocalDate.parse(date, formatter).getDayOfYear();
        //LocalDate.parse() 方法将日期字符串解析为 LocalDate 对象
        //getDayOfYear() 方法则返回该日期在其所属年份中的天数
    }

点击移步博客主页,欢迎光临~

偷cyk的图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/281574.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第二节 linux操作系统安装与配置

一&#xff1a;Vmware虚拟机安装与使用   ①VMware是一个虚拟PC的软件&#xff0c;可以在现有的操作系统上虚拟出一个新的硬件环境&#xff0c;相当于模拟出一台新的PC &#xff0c;以此来实现在一台机器上真正同时运行多个独立的操作系统。   ②VMware主要特点&#xff1a…

[LitCTF 2023]Vim yyds

[LitCTF 2023]Vim yyds wp 题目页面如下&#xff1a; 搜索一番&#xff0c;没有发现任何信息。题目描述中说到了源码泄露&#xff0c;那么先进行目录扫描。 dirsearch 目录扫描 命令&#xff1a; dirsearch -u "http://node4.anna.nssctf.cn:28588/"返回结果&…

PTA——计算火车运行时间

本题要求根据火车的出发时间和达到时间&#xff0c;编写程序计算整个旅途所用的时间。 输入格式&#xff1a; 输入在一行中给出2个4位正整数&#xff0c;其间以空格分隔&#xff0c;分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数&#xff08;00-23&#xff0…

最简单的基于 SDL2 的音频播放器

最简单的基于 SDL2 的音频播放器 最简单的基于 SDL2 的音频播放器正文工程文件下载 参考雷霄骅博士的文章&#xff0c;链接&#xff1a;最简单的基于FFMPEGSDL的音频播放器&#xff1a;拆分-解码器和播放器 最简单的基于 SDL2 的音频播放器 正文 SDL2 音频播放器实现了播放 …

抖音详情API:开发环境搭建与工具选择

随着短视频的流行&#xff0c;抖音已经成为了一个备受欢迎的社交媒体平台。对于开发人员而言&#xff0c;利用抖音详情API开发定制化的抖音应用具有巨大的潜力。本文将为你详细介绍开发抖音应用的开发环境搭建与工具选择&#xff0c;帮助你顺利地开始开发工作。 一、开发环境搭…

Github项目推荐-vocal-separate

项目地址 vocal-separate: 项目简述 这是一个音乐和人声分离的项目&#xff0c;基于python开发。有图形化操作界面&#xff0c;看起来还不错。 项目截图

Centos7安装Docker和Docker-Compose

环境 操作系统&#xff1a;Centos 7.9 root环境 Docker安装 卸载原先的Docker环境 如果你先前的操作系统安装了Docker环境&#xff0c;请卸载 Docker 相关的软件包&#xff0c;没有则忽略这一步。 yum remove docker \docker-client \docker-client-latest \docker-common \doc…

计数排序 CountingSort

计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序&#xff0c;计数排序要求输入的数据必须是有确定范围的整数。 动画演示 : 案例代码 : (此代码有些瑕疵 , 不能处理负数) public static void main(String[] args) {//int[…

【Web API系列】使用异步剪贴板API(async clipboard)的图像的编程复制和粘贴

文章目录 前言一、将数据写入剪切板1. WriteText()2. Write()3. 监听复制事件 二、从剪切板读取数据1.readText()2.read()3. 处理粘贴的文件4. 监听读剪切板事件 三、申请权限政策集成 四、功能检测五、处理多个 MIME 类型 前言 访问系统剪贴板的传统方法是通过 document.exec…

WAZUH的安装、设置代理

wazuh安装 wazu的安装分为以下两种方式 官方文档&#xff1a;https://wazuh.com/blog/detecting-common-linux-persistence-techniques-with-wazuh/ 1、自定义安装 这种方式就是一步一步的安装 直接参考官方文档&#xff1a; 这里就不详细介绍了&#xff0c;本次主要介绍的…

vue3全网最全教程-----(4)

目录 6. 组件通信 6.1. 【props】 6.2. 【自定义事件】 6.3. 【mitt】 6.4.【v-model】 6.5.【$attrs 】 6.6. 【refs、parent】 6.7. 【provide、inject】 6.8. 【pinia】 6.9. 【slot】 1. 默认插槽 2. 具名插槽 3. 作用域插槽 7. 其它 API 7.1.【shallowRef 与…

Obsidian笔记软件无公网远程同步数据到群辉Webdav

文章目录 1. 群晖开启Webdav服务2. 群晖安装Cpolar3. 配置Webdav远程地址4. Obsidian 安装Remotely Save5. Obsidian远程连接Webdav6. 固定Cpolar公网地址7. PC和移动端笔记同步演示 Obsidian是一款笔记软件&#xff0c;它基于Markdown&#xff0c;支持Windows、macOS、iOS和An…

程序员绩效考核表就是这么简单

大家好&#xff0c;今天给大伙分享一份程序员的绩效考核表&#xff0c;仅供参考&#xff01; 《程序员绩效考核表》

EasyExcel详解(结合官方文档)

EasyExcel 零、前言 文章是根据官方文档&#xff0c;加上自己的测试运行总结出来的&#xff0c;目前只总结的EasyExcel读的部分&#xff0c;写的部分还未完结&#xff0c;后续会更新1、官方文档 https://easyexcel.opensource.alibaba.com/2、EasyExcel的maven依赖 <!--…

Git 常用命令知识笔记

Git 仓库数据结构 Git 仓库由一个个的 commit 组成某些 commit 上会有一些 branch 指向它们&#xff0c;这些 branch 的本质是引用有一个特殊的引用叫做 HEAD&#xff0c;它始终指向当前的位置&#xff0c;这个位置可以是 commit&#xff0c;也可以是 branch staging area 暂存…

Linux:进程退出 与 进程等待wait,waitpid

1.进程退出 1.1 进程退出介绍 进程退出场景 代码运行完毕&#xff0c;结果正确代码运行完毕&#xff0c;结果不正确代码异常终止 进程常见退出方法&#xff1a; 1. 正常终止&#xff08;可以通过 echo $? 查看进程退出码&#xff09;&#xff1a; 从main return调用exit…

为什么广西建筑模板在行业中备受推崇?

广西建筑模板以其卓越的品质和性能&#xff0c;在建筑行业中享有极高的声誉。在众多优秀生产商中&#xff0c;能强优品木业作为广西建筑模板的四大品牌之一&#xff0c;以25年的专业生产经验&#xff0c;成为业界的佼佼者。 高质量原材料 广西的气候和土壤条件非常适合木材生…

dev express 15.2图表绘制性能问题(dotnet绘图表)

dev express 15.2 绘制曲线 前端代码 <dxc:ChartControl Grid.Row"1"><dxc:XYDiagram2D EnableAxisXNavigation"True"><dxc:LineSeries2D x:Name"series" CrosshairLabelPattern"{}{A} : {V:F2}"/></dxc:XYDi…

WPF 新手指引弹窗

新手指引弹窗介绍 我们在第一次使用某个软件时&#xff0c;通常会有一个“新手指引”教学引导。WPF实现“新手指引”非常方便&#xff0c;且非常有趣。接下来我们就开始制作一个简单的”新手指引”(代码简单易懂&#xff0c;便于移植)&#xff0c;引用到我们的项目中又可添加一…

AES算法在网络安全中的应用:如何守护数据宝藏?

摘要&#xff1a;高级加密标准&#xff08;AES&#xff09;是美国国家标准与技术研究所&#xff08;NIST&#xff09;用于加密电子数据的规范。本文从历史、算法原理、性能优势和应用等方面全面介绍了AES算法&#xff0c;旨在帮助读者更好地理解这一广泛应用的对称加密算法。 …
最新文章