今夕何夕

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月29前他就会受今年是否为闰年的影响

不然就受到明年是否是闰年的影响

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int read(){
int ans=,f=,c=getchar();
while(c<''||c>''){if(c=='') f=-; c=getchar();}
while(c>=''&&c<=''){ans=ans*+(c-''); c=getchar();}
return ans*f;
}
int T,n,y,r,ans;
char s[];
int pd(int x){
if(x%==) return ;
if(x%==&&x%!=) return ;
return ;
}
int main()
{
T=read();
while(T--){
scanf("%d-%d-%d",&n,&y,&r);
int k=;
if((y<=&&r<)||(y<=)){
for(int i=n+;;i++){
if(pd(i-)) k+=;
else k++;
if(k%==){ans=i;break;}
}
}
else if(y>){
for(int i=n+;;i++){
if(pd(i)) k+=;
else k++;
if(k%==){ans=i;break;}
}
}
if(y==&&r==){
for(int i=n+;;i+=){
if(!pd(i)) k+=;
else k+=;
if(pd(i)&&k%==){ans=i;break;}
}
}
printf("%d\n",ans);
}
return ;
}

最新文章

  1. 【转载】使用pandas进行数据清洗
  2. mysql遇到锁表常用命令
  3. checkedListBox
  4. java8 中的时间和数据的变化
  5. iOS开发——UI进阶篇(十四)modal
  6. 基于Node.js + jade + Mongoose 模仿gokk.tv
  7. Notepad++ Shortcuts 快捷键
  8. style=&quot;display&quot;之后不能获取offsetHeight或clientWidth这类测量的值
  9. Redis多机功能介绍
  10. springmvc在web.xml中的配置
  11. Nginx/LVS/HAProxy负载均衡软件的优缺点详解(转)
  12. 前端利器,如何使用fiddle拦截在线css进行先下调试
  13. rtmp流媒体搭建的所需安装包
  14. java -cp通配符
  15. 2019 年 Spread.NET 产品路线图(Roadmap)
  16. php首字母 大写 数组去重复
  17. suricata 原文记录
  18. 复刻smartbits的国产网络性能测试工具minismb-如何配置Ping报文
  19. Android 程序打包及签名(转)
  20. 15、高可用 PXC(percona xtradb cluster) 搭建

热门文章

  1. &lt;Docker学习&gt;6. docker使用网络
  2. python版opencv:如何用笔记本摄像头拍照保存
  3. 裸机——ADC
  4. 3 web框架
  5. 3,MongoDB之数据类型
  6. css一些事儿
  7. Java 注解(Annoation)学习笔记
  8. 《Cracking the Coding Interview》——第18章:难题——题目10
  9. Python编码、流程控制、格式化输出
  10. 深入理解synchronize