Problem Description

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

Input

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

Output

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

Sample Input

3

2017-08-06

2017-08-07

2018-01-01

Sample Output

2023

2023

2024

分三种情况考虑,第一种月份小于等于2并且天数小于29,第二种月份大于2,第三种日期为2月29的。

#include <iostream>
#include <cstdio>
using namespace std ;
int year, month, day, n;
bool judge_year(int y) {if(y%400==0 || (y%4==0&&y%100!=0)) {return true;}return false;
}
int main() {scanf("%d", &n);char a, b;while(n--) {scanf("%d%c%d%c%d", &year, &a, &month, &b, &day);int ans = 0;if(month < 2||(month == 2 && day < 29)) {for(int i = year+1; i <= 9999; i++) {if(judge_year(i - 1))ans++;ans++;if(ans%7==0 && ans>0) {printf("%d\n",i );break;}}}if(month > 2) {for(int i = year+1; i <= 9999; i++) {if(judge_year(i))ans++;ans++;if(ans%7==0 && ans>0) {printf("%d\n",i);break;}}}if(month==2 && day==29) {for(int i = year+1; i <= 9999; i++) {if(judge_year(i))ans++;ans++;if(ans%7==0 && ans>0 && judge_year(i)) {printf("%d\n",i);break;}}}}return 0;
}

HDU 6112 今夕何夕(模拟)相关推荐

  1. HDU 6112 今夕何夕【2017百度之星】【日期模拟计算】【基姆拉尔森计算公式】【蔡勒公式】

    今夕何夕 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  2. 今夕何夕 HDU - 6112 ( 模拟 )

    今夕何夕 今天是2017年8月6日,农历闰六月十五. 小度独自凭栏,望着一轮圆月,发出了"今夕何夕,见此良人"的寂寞感慨. 为了排遣郁结,它决定思考一个数学问题:接下来最近的哪一年 ...

  3. hdu 6112 今夕何夕

    今夕何夕 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  4. HDU 6112 今夕何夕 蔡勒公式

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6112题意:中文题目 分析:关键点在与如何计算一个日期是星期几,这个可以通过蔡勒公式来计算.基姆拉尔森计 ...

  5. HDU 6112黑色星期五 蓝桥基拉姆森公式

    若某个月13号恰好是星期五,则这一天被称为黑色星期五.已知某年的一月一日是星期w,并且这一年是闰年, 求出这一年所有13号那天是星期5的月份,按从小到大的顺序输出月份数字.(w=1..7)输入输入有多 ...

  6. hdu 6112 今夕何年(模拟)

    今天是2017年8月6日,农历闰六月十五. 小度独自凭栏,望着一轮圆月,发出了"今夕何夕,见此良人"的寂寞感慨. 为了排遣郁结,它决定思考一个数学问题:接下来最近的哪一年里的同一个 ...

  7. HDU 4121 Xiangqi 模拟题

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=4121 首先对标题赞一个,非要叫 "Xiangqi" 而不是 "中国象棋&q ...

  8. HDU 5374 Tetris 模拟俄罗斯方块

    题目大意: 就是俄罗斯方块然后旋转, 向左右移动, 向下掉, 然后模拟求按照给定序列的操作能消除多少行... 大致思路: 就是模拟一下各个步骤的操作...按照题目说的steep1, 2, 3, 4一步 ...

  9. HDU 4262 Juggler (模拟+线段树优化)

    转载请注明出处,谢谢http://blog.csdn.net/acm_cxlove/article/details/7854526       by---cxlove http://acm.hdu.e ...

最新文章

  1. Juniper SRX 常用命令
  2. 英语 语义分割_Padlex数据处理-语义分割-分段变换,PaddleX,segtransforms
  3. java有什么字符串_Java 中操作字符串都有哪些类?它们之间有什么区别
  4. 理解什么是前后端分离
  5. python制作安装包_如何制作python安装模块(setup.py)
  6. .NET3.5 GDI+ 图形操作2
  7. 向android获取文件路径,在Android上获取图像的文件路径
  8. mysql 注释几种方法
  9. phpwind测试之phpwind安装(二)
  10. 【C++设计模式】建造者模式
  11. CRM系统提高企业核心竞争力
  12. C++:空间坐标映射到球面坐标/全景图
  13. 适用于 Windows 7 SP1 和 Windows Server 2008 R2 SP1 的扩展安全更新(ESU)许可准备程序包
  14. 前端程序员成长的记录及被某IT外包公司套路的经历
  15. 图解MySQL系列(2)-SQL实战研究InnoDB架构设计
  16. 今年最后一月数据库排名公布!前三难以撼动!
  17. Python中复数取.imag的问题
  18. 面试题01.05.一次编辑
  19. 互联网服务器信息检索,网络信息检索的一般方法
  20. webstorm 一次Git使用很卡的处理记录

热门文章

  1. unity 中打印照片的四种方法
  2. 预算少的竞价账户怎么投放sem优点
  3. 计算机科学与交通方向,智能交通系统就业方向
  4. 写给小鹤双拼用户的一封信
  5. android 拨号上网流程
  6. mac安装软件没权限Anywhere ---“XX” is damaged and can’t be opened. You should move it to the Trash 解决方案
  7. 鼎捷t100架构_鼎捷T100发布 打造“互联网+制造”企业智能互联云平台
  8. 中兴服务器远程,如何远程控制中兴支点操作系统远程桌面
  9. 刚拿到PMP证书, 想吐槽一下, PMP的考证真的值得考吗?
  10. 【打卡】糖尿病遗传风险检测挑战赛