AcWing 3498. 日期差值(每日一题)

题目链接:3498. 日期差值 - AcWing题库

有两个日期,求两个日期之间的天数,如果两个日期是连续的我们规定他们之间的天数为两天。

输入格式

输入包含多组测试数据。

每组数据占两行,分别表示两个日期,形式为 YYYYMMDD

输出格式

每组数据输出一行,即日期差值。

数据范围

年份范围 [1,9999]
保证输入日期合法。
测试数据的组数不超过 100

输入样例:

20110412
20110422

输出样例:

11

解题思路:

求出第一年1月1日起到y1年m1月d1日共多少天t1,第一年1月1日起到y2年m2月d2日共多少天t2,

|t2-t1|+1即为答案。求多少天时,要先求y1-1年,m-1月,共多少天,再加上d1即可。上代码!

#include<iostream>
using namespace std;
int months[]={0,31,28,31,30,31,30,31,31,30,31,30,31};//一年365天月份数组
int is_leap(int year){//判断是否为闰年if(year%4==0&&year%100||year%400==0){return 1;}else{return 0;}
}
int getday(int year,int month){//获取哪一年哪一月的天数if(month==2)return 28+is_leap(year);//判断闰年二月份29天return months[month];
}
int calc(int year,int month,int day){//1~year年month月day日共多少天int ans=0;for(int i=1;i<year;i++){ans+=365+is_leap(i);//闰年多一天}for(int i=1;i<month;i++){ans+=getday(year,i);}return ans+day;
}
int main(){int y1,m1,d1,y2,m2,d2;while(~scanf("%04d%02d%02d\n%04d%02d%02d",&y1,&m1,&d1,&y2,&m2,&d2)){//多组输入//%04d表示输入为4位,不足4位前面补0printf("%d\n",abs(calc(y1,m1,d1)-calc(y2,m2,d2))+1);//两个日期之差取绝对值//+1,自己也是一天,比如1月1到1月2,这是两天,相减是一天,所以要加1}return 0;
}

日期问题为蓝桥杯热点问题,懂得了思路就好写了,大体问题要么求天数,要么求星期几,多加练习。文章尚有不足,有问题请各位大佬指出。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

项目投标文件两大必备检索工具

项目投标文件两大必备检索工具&#xff1a; 1.anytxt 文件内容检索工具【AnyTXT Searcher】 这款软件也是一款搜索工具&#xff0c;但是它与Everything不同的是&#xff0c;Everything是基于文件名搜索相关文件&#xff0c;而AnyTXT是基于文件内容搜索相关文件&#xff0c;两…

项目七 完成学生信息的综合查询

项目七 完成学生信息的综合查询 1&#xff0c;探究综合查询理论的必备理论知识 笛卡尔积运算原理 笛卡尔乘积是指在数学中&#xff0c;两个集合 X 和 Y 的笛卡尓积&#xff08;Cartesian product&#xff09;&#xff0c;又称直积&#xff0c;表示为 X Y。 对数据表做笛卡…

AI入门之旅:从基础知识到实战应用(六)

一、人工智能学习之路总结 人工智能学习的关键点与挑战可以总结如下&#xff1a; 关键点&#xff1a; 理论基础&#xff1a; 理解机器学习、深度学习等人工智能的基本原理和算法是学习的基础&#xff0c;包括线性代数、概率统计、微积分等数学知识&#xff0c;以及神经网络、…

想提升职场形象?收下这3种工作中常用的邮件问候语吧!

发给老板、同事或跨部门同事的第一行邮件就会为你的整封邮件定下基调。开场白揭示了你写电子邮件时的许多情绪状态&#xff1a;它们可能传达出自信&#xff0c;增强团队成员之间的信任度。或者起到反作用&#xff1a;语气上的不足可能会影响士气并造成混乱。 因此&#xff0c;…

Linux -- 常用命令积累

1、查找后台正在运行的命令&#xff0c;以shell 程序 为例 ps -ef | grep cv1.sh使用 ps 命令来获取更详细的信息&#xff0c;包括进程的完整命令行可以使用 kill 命令通过进程的 PID 来停止特定的进程 得到以下内容&#xff1a; rot 27772 5072 0 11:59 pts/8 0…

Vue3--计算属性和侦听器

计算属性 Computed 一般是对某个响应式数据进行加工处理获得新数据 侦听器 watch 监视某个响应式数据&#xff0c;如果它发生变化&#xff0c;就自动调用某个函数

MySQL的概述与安装

一、数据库的基本概念&#xff1a; 1.1 数据&#xff1a; 1&#xff09; 描述事物的符号记录称为数据&#xff08;Data&#xff09;。数字、文字、图形、图像、声音、档案记录等 都是数据。 2&#xff09;数据是以“记录”的形式按照统一的格式进行存储的&#xff0c;而不是…

个体户、个人独资企业和一人有限公司的区别

个体工商户 定义 根据《中华人民共和国民法通则》规定&#xff0c;公民在法律允许的范围内&#xff0c;依法经核准登记&#xff0c;从事工商业经营的&#xff0c;为个体工商户。个体工商户的债务&#xff0c;个人经营的&#xff0c;以个人财产承担&#xff1b;家庭经营的&…

权限维持小结

windows 1.自启动 1、自启动路径加载 C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\ 2、自启动服务加载 (服务重启system权限) sc create ServiceTest binPath C:\xd.exe start auto sc delete ServiceTest 3、自启动注册表加载 -…

SQL语言之CREATE/DROP/ALTER 语句

CREATE/DROP/ALTER 语句&#xff0c;表的创建、删除、修改语句 文章目录 一、模式 1、定义模式 CREATE SCHEMA 2、删除模式 DROP SCHEMA 二、基本表 1、定义基本表 CREATE TABLE (1)数据类型 (2)列级完整性约束条件 (3)表级完整性约束条件 2、在模式中定义表 3、修改…

openEuler 欧拉系统nginx正向代理 http https —— 筑梦之路

正向代理 Nginx正向代理&#xff0c;通过服务器代理客户端去重定向请求访问到目标服务器的一种代理服务。对于目标服务器来说浏览器/客户端是隐藏的。Nginx 正向代理默认只支持http 协议&#xff0c;不支持 https 协议&#xff0c;需借助"ngx_http_proxy_connect_module&q…

面试算法-49-缺失的第一个正数

题目 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,0] 输出&#xff1a;3 解释&#xff1a;范围 [1,2] 中的数字都…

Linux docker7--私有镜像仓库registry和UI搭建及使用

一、对于开源的镜像&#xff0c;如redis&#xff0c;nginx等&#xff0c;可以通过官方仓库Docker Hub&#xff0c;或者国内的阿里云等共有仓库下载获取到镜像。但是企业内对于自己的研发产品不可能往公共仓库去发布镜像的&#xff0c;一般都会搭建私有的镜像仓库&#xff0c;保…

力扣练习题

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以按…

string类型的使用以及编码方式

Redis 中所有的键的类型都是字符串类型&#xff0c;⼀个字符串的最⼤值不能超过 512 MB。 由于 Redis 内部存储字符串完全是按照⼆进制流的形式保存的&#xff0c;所以 Redis 是不处理字符集编码问题的&#xff0c;客⼾端传⼊的命令中使⽤的是什么字符集编码&#xff0c;就存储…

Marin说PCB之电源完整性之直流压降仿真CST--03

本期内容主要讲解的是关于在CST软件上电源直流压降仿真VRM的一些相关参数设置&#xff0c;小编我在之前文章中有说到过如何利用CST仿真电源信号的直流压降&#xff0c;不过有一些问题我这边再去补充一些。 首先就是VRM芯片的设置了&#xff0c;小编我还是按照之前那样设置&…

智能合约 之 ERC-20介绍

什么是ERC20 ERC20全称为Ethereum Request for Comment 20&#xff0c;是一种智能合约标准&#xff0c;用于以太坊网络上的代币发行 姊妹篇 - 如何部署ERC20 ERC20的应用场景 代币化资产&#xff0c;例如&#xff1a;USDT 是一种以美元为背书的ERC20代币&#xff0c;每个USDT代…

如何解决MySQL死锁(看懂MySQL锁日志)

有时候系统在生产运行着&#xff0c;会突然爆出 [40001][1213] Deadlock found when trying to get lock; try restarting transaction 这个时候每个人都会很紧张&#xff0c;因为死锁会影响DB性能&#xff0c;严重时甚至拖垮整个系统。在实际的环境中&#xff0c;很多服务会共…

代码学习记录23--回溯算法第四天

随想录日记part23 t i m e &#xff1a; time&#xff1a; time&#xff1a; 2024.03.19 主要内容&#xff1a;回溯算法在代码学习中尤其重要&#xff0c;所以今天继续加深对其的理解&#xff1a;1&#xff1a;复原IP地址 &#xff1b;2.子集 &#xff1b;3.子集II 93.复原IP地…

shopee无货源出单了怎么发货?shopee怎么做无货源?

在Shopee的电商大舞台上&#xff0c;“无货源出单”就像是一场神奇的魔术表演。你的店铺是舞台&#xff0c;买家的订单是观众的掌声&#xff0c;而你&#xff0c;就是那位神秘的魔术师。订单来了&#xff0c;你却没有货&#xff1f;这可不是什么障碍&#xff0c;因为你有着更为…