【问题描述】

今天是2017年8月6日,农历闰六月十五。
       小度独自凭栏,望着一轮圆月,发出了“今夕何夕,见此良人”的寂寞感慨。
       为了排遣郁结,它决定思考一个数学问题:接下来最近的哪一年里的同一个日子,和今天的星期数一样?比如今天是8月6日,星期日。下一个也是星期日的8月6日发生在2023年。
       小贴士:在公历中,能被4整除但不能被100整除,或能被400整除的年份即为闰年。

【输入形式】

第一行为T,表示输入数据组数。
       每组数据包含一个日期,格式为YYYY-MM-DD。
           1 ≤ T ≤ 10000, YYYY ≥ 0
       日期一定是个合法的日期

【输出形式】

对每组数据输出答案年份,题目保证答案不会超过四位数。

【样例输入】

3
2017-08-06
2017-08-07
2018-01-01

【样例输出】

2023
2023
2024
#include <iostream>
using namespace std;
int date(int year)
{if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))return 366;elsereturn 365;
}
int date1(int year)
{if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))return 1461;elsereturn 1460;
}
int main()
{int sum = 0;int n;cin >> n;for (int i = 0; i < n; i++){int a1, a2, a3;scanf("%d-%d-%d", &a1, &a2, &a3);if (a2 == 2 && a3 == 29){for (int j = a1;; ){sum += date1(j+4);j += 4;if (sum % 7 == 0){cout << j << endl;break;}}}else{for (int j = a1;;){if (a2 <= 2)sum += date(j);elsesum += date(j + 1);j++;if (sum % 7 == 0){cout << j << endl;break;}}}}
}

这题在csdn上有许多的解法,不过在测试程序时有一些错误,

经过分析,可能是在判断为2月29日时忘记判断之后的日子中为100倍数年时当成闰年,导致错误

在循环中加一个判断闰年的函数,可以解决问题

今夕何夕 今天是2017年8月6日,农历闰六月十五。 小度独自凭栏,望着一轮圆月,发出了“今夕何夕,见此良人”的寂寞感慨。相关推荐

  1. 类似“今天是2008年1月3日 农历丁亥年十一月廿五 星期四”日期的JS

    function $(e) {return document.getElementById(e);} function mygetd() {     var sDate = new Date();   ...

  2. 【历史上的今天】3 月 20 日:cURL 二十五周年;Docker 发布;思科收购 Linksys

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2023 年 3 月 20 日,在 1999 年的今天,人类首次成功乘热气球环球飞行.在 24 年的今天,瑞士人皮 ...

  3. 最新手机号段归属地数据库(2017年4月16日版)免费下载

    2017年4月16日版   360569条记录 最新 手机号段数据库 号码归属地数据库  移动号段 联通号段 电信号段 14号段 170号段(虚拟运营商)    权威  全面  准确  规范 字段包括 ...

  4. 数学分析高等代数考研试题荟萃[更新至2017年10月1日]

    数学分析高等代数考研试题荟萃[更新至2017年10月1日], 需要的话见: http://www.followmath.com/forum.php?mod=viewthread&tid=469 ...

  5. 2017年10月31日结束Outlook 2007与Office 365的连接

    2017 年10月31日 ,微软即将推出 Office 365中Exchange Online邮箱将需要Outlook for Windows的连接,即通过HTTP Over MAPI方式,传统使用R ...

  6. 2017年3月14日上午日志

    2017年3月14日上午复习了高等数学,观看了张宇高等数学第七讲教学视频考研数学命题的新颖性第三种类型逻辑推理题型举反例的方法,积累了更多学习技巧,对线性代数部分的行列式概念有了初步了解,晚上看相应部 ...

  7. 京东发力金融AI,欲再招50位金融AI顶级科学家 转载 2017年12月04日 00:00:00 42 12月1日,京东金融AI实验室在美国硅谷正式投入运营。亦在同一天,京东金融宣布,美国伊利诺伊大

    京东发力金融AI,欲再招50位金融AI顶级科学家 转载 2017年12月04日 00:00:00 42 12月1日,京东金融AI实验室在美国硅谷正式投入运营.亦在同一天,京东金融宣布,美国伊利诺伊大学 ...

  8. python pandas dataframe 行列选择,切片操作 原创 2017年02月15日 21:43:18 标签: python 30760 python pandas dataframe

    python pandas dataframe 行列选择,切片操作 原创 2017年02月15日 21:43:18 标签: python / 30760 编辑 删除 python pandas dat ...

  9. 2017年度盘点:15个最流行的GitHub机器学习项目 By 机器之心2017年12月21日 15:23 在本文中,作者列出了 2017 年 GitHub 平台上最为热门的知识库,囊括了数据科学、机

    2017年度盘点:15个最流行的GitHub机器学习项目 By 机器之心2017年12月21日 15:23 在本文中,作者列出了 2017 年 GitHub 平台上最为热门的知识库,囊括了数据科学.机 ...

最新文章

  1. [深度学习] keras的EarlyStopping使用与技巧
  2. Android EventBus使用与思路总结
  3. python 操作fit文件图像
  4. ASP.NET备份与还原SQL Server数据库
  5. input的type为number
  6. ADBPGGreenplum成本优化之磁盘水位管理
  7. vue2.0中组建里面套用组件_vue2.0如何嵌套组件
  8. EAS 表格、查询方案存储表
  9. eclipse jstl包_我的Java Web之路41 - JSTL初步使用
  10. 解决微信调整字体大小导致Html5页面混乱
  11. 深度学习:批归一化和层归一化Batch Normalization、Layer Normalization
  12. Kibana:为 Dashboard 创建链接 drilldown - 7.11 版本
  13. 路由器怎么设置WiFi短信认证?
  14. TOM邮箱|163邮箱如何注册?怎么登陆?
  15. 《自控力》第七章读书笔记
  16. mysql修改配置文件进行优化
  17. 软件测试对比软件开发,你适合哪款?
  18. jq实现点击容器实现2张图片切换(改变src路径)
  19. 人工智能会话代理在医疗保健中的有效性:系统综述
  20. 五分钟学会ios反编译

热门文章

  1. HGE 系列教材(2) --- 安装 HGE
  2. Centos7更换阿里源
  3. 华硕A456UR7500完美黑苹果安装教程
  4. 这些人都在使用超级表格
  5. 盛迈坤电商:自然流量怎么样打造爆款
  6. 小睿家庭云可以刷linux系统吗,小睿私人云 篇二:小睿私人云刷机
  7. vue 倒计时 插件_Vue学习笔记-倒计时插件
  8. 关于重装WIN10后有NVIDIA驱动但没有控制面板的可能的解决办法
  9. 解决Arcgis1041安装后 ArcCatalog可以打开而ArcMap打不开报错问题!
  10. 96.android 简单的更新APP、下载安装APK(四种方式)