计算天数(中等难度暴力)
题目描述
蒜头君给定两个日期,请计算相差的天数。比如 2010-1-1 和 2010-1-3 相差 2 天。
输入格式
共两行:
第一行包含三个整数 startYear,startMonth,startDay,分别是起始年、月、日。
第二行包含三个整数 endYear,endMonth,endDay,分别是结束年、月、日。
相邻两个整数之间用单个空格隔开。
年份范围在 1∼3000。保证日期正确且结束日期不早于起始日期。
输出格式
输出一个整数,即是两个日期相差的天数。
输入样例
2008 1 1 2009 1 1
输出样例
366
解题思路
将起始年份剩下天数加上起始年份和终止年份间相差的年份对应的天数,再加上终止年份已过的日期,即可算出这两个日期相差的天数
#include <stdio.h>int main() {int a, b, c; //起始年份int x, y, z; //终止年份int m[13] = {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 30}; //闰年int n[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 30};//非闰年scanf("%d %d %d", &a, &b, &c);scanf("%d %d %d", &x, &y, &z);int k = 0, i;if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0) { //判断起始年份是否为闰年for (i = b; i <= 12; i++) { //将该闰年年份剩下每月天数加起来k += m[i];}} else {for (i = b; i <= 12; i++) { //将该非闰年年份剩下每月天数加起来k += n[i];}}k = k - c; //减去起始年份的c即得到该年剩下的天数while (a != x - 1) { //加上起始和终止年份间相差的年数a++;if (a % 4 == 0 && a % 100 != 0 || a % 400 == 0) { //相差年份中闰年加366非闰年加365k += 366;} else {k += 365;}}int j;if (x % 4 == 0 && x % 100 != 0 || x % 400 == 0) {//判断终止年份是否为闰年for (j = 1; j < y; j++) { //加上终止年份月份k += m[j];}} else {for (j = 1; j < y; j++) {k += n[j];}}printf("%d", k + z + 1); //输出结果加上终止年份的z日return 0;
}
计算天数(中等难度暴力)相关推荐
- AST反混淆实战-中等难度
Ast实战:反混淆解析中等难度ob混淆网站 https://obfuscator.io/ 一.混淆demo生成 二.混淆demo生成 三.混淆demo整理 demo.js //TODO 这里对混淆de ...
- 【快速幂+中等难度】Calculation 哈工大HITOJ2901
这些天好颓啊..都没有A题,只是各种等着填的坑..简直.. 这道题....其实是快速幂模板题..为了学习矩阵快速幂,顺手复习下快速幂... 哈工大的OJ其实还挺友好的.速度也快..赞一个.. 翻译 给 ...
- LeetCode 中等难度 92. 反转链表 II解题思路
92. 反转链表 II 题目:中等难度 反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明: 1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4-& ...
- 基于元组,根据月份,计算天数.(Python)
"""根据月份,计算天数. """# month = int(input("请输入月份:")) # if month & ...
- mysql 日期计算_mysql两个日期计算天数怎么算?
展开全部 mysql两个日期计算天数32313133353236313431303231363533e58685e5aeb931333365633864的计算有如下方式: 1.利用TO_DAYS函数 ...
- html计算天数,Javascript实现简易天数计算器
本文实例为大家分享了Javascript实现简易天数计算器的具体代码,供大家参考,具体内容如下 效果图: 功能: 1. 支持选择日期: 2. 自动计算闰年: 3. 支持使用当前日期. 代码: (1)h ...
- CCF NOI1016 计算天数
问题链接:CCF NOI1016 计算天数. 时间限制: 1000 ms 空间限制: 262144 KB 题目描述 输入年份与月份,求该月共有多少天. 输入 输入两个空格隔开的正整数year和mon ...
- android中计算日期差,Android编程实现根据不同日期计算天数差的方法
本文实例讲述了Android编程实现根据不同日期计算天数差的方法.分享给大家供大家参考,具体如下: Calendar cal1 = getCalendarFromDate(mStartDate); l ...
- mooc中习题--计算天数
7-19 计算天数(15 分) 本题要求编写程序计算某年某月某日是该年中的第几天. 输入格式: 输入在一行中按照格式"yyyy/mm/dd"(即"年/月/日") ...
最新文章
- 如何创建 java虚拟机_Java虚拟机如何创建对象?
- java 微信支付 md5_微信支付MD5签名算法实现
- 牛客题霸 SQL2 查找入职员工时间排名倒数第三的员工所有信息
- find 按文件修改时间查找文件
- VC常用数据类型使用转换详解
- ASP.NET Core 进程内(InProcess)托管(6)《从零开始学ASP.NET CORE MVC》:
- 剑指offer--在O(1)时间内删除链表结点
- 【面向对象】面向对象程序设计测试题14-Java文件测试题
- python deepcopy_轻轻吐槽下python的deepcopy居然一点不deep
- 【笔记】2-SAT (tarjan)
- Mysql 中is null 和 =null 的区别
- mysql 创建表单
- 从鲁班造木鸢到智能控制,图解世界无人机发展简史
- python程序员专用壁纸_程序员如何一键“Get”高清壁纸?
- 再生核希尔伯特空间(RKHS)和核函数
- html获取本机ip,获取本机IP地址的实例(JavaScript / Node.js)
- 大数据时代下的SQL Server第三方负载均衡方案----Moebius测试
- Android 页面跳转时发生双击导致app闪退的解决方案
- 为什么敲了许多年的代码,却仍然在原地踏步?| 程序员有话说
- 简单的stm32程序