日期差值(c++实现)

题目


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


输入


输入包含多组测试数据。

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


输出


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


样例


输入样例:
20110412
20110422


输出样例:
11


代码

#include<iostream>
using namespace std;int st,ed;
int months[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};bool isDate(int date){int year = date/10000;int month = (date %10000) /100;int day = date % 100;if(month>12 || month<1 || day <= 0 || day>31) return false;if(month!=2) return day<=months[month];if(month==2){if((year%4==0 && year%100!=0) || year%400==0) return day<=29;return day<=28;}return false;
}int get(int year){if((year%4==0 && year%100!=0) || year%400==0) return 366;return 365;
}int main(){while(scanf("%d%d",&st,&ed)!=-1){int res = 0;if(st>ed) swap(st,ed);int y1 = st / 10000,y2 = ed/10000;for(int i=st;i/10000<y1+1;i++){if(isDate(i)) res++;}for(int i=y1+1;i<=y2;i++){res += get(i);}for(int i=ed+1;i/10000<y2+1;i++) if(isDate(i)) res--;printf("%d\n",res);}
}

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

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

相关文章

Python编程-带你制作实用工具-语音识别、音频转换、音频转文字、录音转Mp3、文字生成音频(附代码和源码)

目录 音频mp3、flac、wav、ogg格式转换 安装 批量执行 SpeechRecognition 安装 下载中文声学模型和语言模型 音频转文字 文字转语音 安装pyttsx3

设计模式(18):状态模式

核心 用于解决系统中复杂对象的状态转换以及不同状态下行为的封装问题 结构 环境类(Context): 环境类中维护一个State对象&#xff0c;它定义了当前的状态&#xff0c;并委托当前状态处理一些请求&#xff1b; 抽象状态类(State): 用于封装对象的一个特定状态所对应的行为&a…

如何编写一份完整的软件测试报告

软件测试是软件开发过程中一个非常重要的环节&#xff0c;它有助于确保软件的质量和稳定性。编写一份完整的软件测试报告是软件测试工作的重要组成部分&#xff0c;它不仅可以帮助测试团队记录测试结果和发现的问题&#xff0c;还可以为开发团队提供有价值的反馈和改进建议。下…

Javascript - 你在项目中是如何使用闭包的

难度级别:中高级及以上 提问概率:80% 很多初级开发者其实在日常工作中,很少有使用闭包的机会,但这却是一个非常高频的考点,因为对闭包不是特别了解,使用又少,久而久之,就觉得闭包是一个难点。在Javascript中,一个普通方法在执行完毕后…

C++ 构建太慢的 5 个信号

从我的个人经验来看&#xff0c;我们每天庸庸碌碌&#xff0c;忙于处理各种各样的任务&#xff0c;但却并一定不了解这些处理方式背后的真实原因。与之相应地&#xff0c;我们自然也都不清楚每个决定背后的原因。在工作和个人生活上&#xff0c;大都如此。大家遵循着一种特定的…

保险行业106短信群发营销时这些问题规避后效果倍增!

保险行业在使用106短信群发进行营销时&#xff0c;确实存在一些需要规避的问题。当这些问题得到妥善处理后&#xff0c;营销效果往往会倍增。以下是一些建议&#xff0c;帮助保险行业规避这些问题&#xff0c;提升106短信群发营销的效果&#xff1a; 1.个性化与精准定位&#x…

使用 Golang 和 Tesseract 库识别验证码

随着网络数据的增长和网络爬虫的普及&#xff0c;网站为了防止恶意爬取数据&#xff0c;经常会采用验证码来进行验证。验证码的出现给爬虫带来了一定的挑战&#xff0c;特别是当验证码的形式越来越复杂时。 在这篇文章中&#xff0c;我们将介绍如何使用 Golang 和 Tesseract 库…

华为ensp中PPP(点对点协议)中的PAP认证 原理和配置命令

作者主页&#xff1a;点击&#xff01; ENSP专栏&#xff1a;点击&#xff01; 创作时间&#xff1a;2024年4月8日14点31分 PPP协议&#xff08;Point-to-Point Protocol&#xff09;是点到点协议&#xff0c;是一种常用的串行链路层协议&#xff0c;用于在两个节点之间建立点…

windows一键休眠,一键唤醒

1.使windows睡眠不可用&#xff0c;cmd以管理员身份运行&#xff1a; powercfg.exe /hibernate off 2.桌面创建快捷键 Rundll32.exe Powrprof.dll,SetSuspendState Sleep

On-Page SEO:什么是页面优化?如何进行页面优化?(附清单)

本文原文链接&#xff1a; https://ahrefs.com/blog/zh/on-page-seo/ 在本指南中&#xff0c;你将学习如何优化你的内容&#xff0c;以便在 Google 上获得更高的排名。 我们将分享经过验证、易于遵循的页面优化中真正重要的内容的建议。 需要一份清单吗&#xff1f;你也可以…

qt 打印日志

在 Qt Creator 中&#xff0c;将 QDebug、QInfo、QWarning、QCritical 和 QFatal 打印的日志输出到指定文件&#xff0c;需要设置 Qt 的消息处理机制。这通常涉及到安装一个自定义的消息处理器&#xff0c;该处理器将日志消息重定向到文件。以下是一个基本的步骤指南&#xff1…

Unity-超级方便的Excel 读写插件

超级无敌棒棒糖&#x1f58c; &#x1f32d;功能介绍&#x1f355; Demo准备一个数据类准备一个Excel导入Excel行数据转换导出到Excel &#x1f371;新增映射字段类型 &#x1f32d;功能介绍 &#x1f4a1;.Excel 行数据转对象&#xff1a;把导入的Excel 每一行数据进行自动映…

7.手写JavaScript冒泡排序

一、核心思路 每次比较相邻两个元素&#xff0c;然后交换它们的位置&#xff0c;重复这个过程直到整个数组排序完成。 二、代码实现 let arr [2,6,8,1,3,9,0,5,4,7] /*** 冒泡排序 * param {Array} array 传入数组 * return {Array} array 返回选择排序结果 */ function bu…

边缘智能网关为企业数字化转型提供强有力支持-天拓四方

一、企业背景 随着信息技术的飞速发展&#xff0c;企业对于数据处理和通信的需求日益增长。特别是在工业4.0、智能制造等领域&#xff0c;企业面临着海量的数据采集、实时分析、远程监控等挑战。传统的中心化数据处理模式已难以满足这些需求&#xff0c;企业需要寻求一种更加高…

spring加载类初始化顺序

今天看spring官网的时候&#xff0c;提到了Ordered执行顺序。我当时记得PostConstruct注解会在bean加载后执行&#xff0c;现在又来了一个执行顺序&#xff0c;直接给我整蒙了。 于是我写了一个简单的dom来看看&#xff0c;它是什么&#xff1a; Service("t2ServerImpl&q…

编程新手必看,学习python中元组数据类型内容(10)

1、Python3 元组 Python中的元组是一个不可变的序列类型&#xff0c;用于存储一组有序的数据。 元组的主要特点包括&#xff1a; 不可变性&#xff1a;一旦创建&#xff0c;元组的内容不能更改&#xff0c;这使得它们成为保护数据不被修改的理想选择。有序性&#xff1a;元组…

Git - 如何重置或更改 Git SSH 密钥的密码?

Git 使用 ssh 方式拉取代码时&#xff0c;报 ssh password login&#xff0c;提示输入密码&#xff0c;这时很容易误填为 Git 的登录密码&#xff0c;其实这时需要输入 SSH 证书的密码&#xff0c;下面直接提供更改以及重新导入证书的方式。 首先需要确认你的本地是否有 SSH 钥…

隐藏在计算过程中的数据超限

【题目描述】 输入两个正整数&#xff0c;输出&#xff0c;保留5位小数。输入包含多组数据&#xff0c;结束标记为n&#xff1d;m&#xff1d;0。提示&#xff1a;本题有陷阱。 【样例输入】 2 4 65536 655360 0 0 【样例输出】 Case 1: 0.42361 Case 2: 0.00001 【题…

学习记录14-运算放大器2

目录 前言 一、理想放大器 二、虚断 二、虚短 虚短的两个使用条件 1.虚短概念 2.如果我们将运放的同相端和反相端颠倒会怎样呢&#xff1f; 总结 前言 主要讲述运算放大器的虚短虚断 一、理想放大器 如果没有基础或只是想简单了解&#xff0c;可以看我前一篇文章&am…

vue项目初始化和部署

目录 1. 技术简介... 2 2. 安装Node.js. 3 3. 全局安装Vue CLI (脚手架工具) 5 4. 创建一个新的Vue项目... 6 5. 在阿里云虚拟机安装和配置Nginx. 9 6. 将Vue项目打包部署到Nginx下... 14 7. 访问部署的项目... 14 1. 技术简介 Vue.js&#xff08;通常简称为Vue&#x…