43:相关月
时间:2022-05-08
本文章向大家介绍43:相关月,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
43:相关月
总时间限制: 1000ms 内存限制: 65536kB描述
“相关月”是指那些在一年中月份的第一天星期数相同的月份。例如,九月和十二月是相关的,因为九月一日和十二月一日的星期数总是相同的。两个月份相关,当且仅当两个月份第一天相差的天数能被7整除,也就是说,这两天相差为几个整星期。又如,二月和三月一般都是相关月,因为二月有28天,能被7整除,也恰好为4个星期。而在闰年,一月和二月的相关月与它们在平年的相关月是不同的,因为二月有29天,其后每个月份的第一天星期数都推后了一天。
输入输入的第一行为整数n(n ≤ 200), 其后n行,每行三个整数,依次为一个年份和两个月份,整数之间用一个空格分隔。输出输出有n行,对应于每个输入的年份和相应两个月份, 如果这两个月份是相关的,则输出YES; 否则,输出NO。样例输入
5
1994 10 9
1935 12 1
1957 1 9
1917 9 12
1948 1 4
样例输出
NO
NO
NO
YES
YES
来源北京大学医学部计算概论08期末考试题
1 #include<iostream>
2 using namespace std;
3 int month[21]={0,31,28,31,30,31,30,31,31,30,31,30,31};//非闰年
4 int rmonth[21]={0,31,29,31,30,31,30,31,31,30,31,30,31};//闰年
5 int flag=1;
6 int main()
7 {
8 int n;
9 int year;
10 int month1;
11 int month2;
12 cin>>n;
13 for(int i=1;i<=n;i++)
14 {
15 cin>>year>>month1>>month2;
16 if(month1>month2)
17 {
18 int d=month1;month1=month2;month2=d;
19 }
20 if((year%4==0&&year%100!=0)||year%400==0)
21 {
22 int begin=1;//默认第一天是星期一
23 for(int j=month1;j<=month2-1;j++)
24 {
25 for(int k=1;k<=rmonth[j];k++)
26 {
27 if(begin==7)
28 begin=1;
29 else
30 begin++;
31
32 }
33
34 }
35 if(begin==1)
36 cout<<"YES"<<endl;
37 else
38 cout<<"NO"<<endl;
39 }//闰年
40 else
41 {
42 int begin=1;//默认第一天是星期一
43 for(int j=month1;j<=month2-1;j++)
44 {
45 for(int k=1;k<=month[j];k++)
46 {
47 if(begin==7)
48 begin=1;
49 else begin++;
50 }
51 }
52 if(begin==1)
53 cout<<"YES"<<endl;
54 else
55 cout<<"NO"<<endl;
56 }//非闰年
57 }
58 return 0;
59 }
- 【防护】如何阻止SELECT * 语句
- COGS 862. 二进制数01串【dp+经典二分+字符串】
- 【AlphaGo Zero 核心技术-深度强化学习教程代码实战03】编写通用的格子世界环境类
- 冒泡排序简单操作模版及实例分析
- COGS 1299. bplusa【听说比a+b还要水的大水题???】
- python学习笔记之运算符
- 锐捷网络NBR部分路由器cookie欺骗权限绕过
- 手写快排模版
- COGS 68. [NOIP2005] 采药【01背包复习】
- UESTC 30 &&HDU 2544最短路【Floyd求解裸题】
- 我的第一个网页制作:Hello World!
- UESTC 1584 Washi与Sonochi的约定【树状数组裸题+排序】
- Hyperledger - 超级账本项目:简介,安装,案例
- 我的第三个网页制作:b、i、s、u、sub、sup标签的使用
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 推荐几个 VS Code 扩展、主题和字体
- 万字长文 | 这可能是东半球最保姆级的后台服务器开发学习路线
- Python|对多角星的绘制
- Pythyon|当中秋遇上国庆
- 清华老哥要是会 screen,是不是就不用拖着电脑骑车了
- Python|用turtle画笔制作奥运五环
- 2 行代码,将 .NET 执行时间降低 87%!(附代码)
- Web渗透测试|SQL报错注入
- Python|运算符的运用
- Windows下登录凭证窃取技巧
- 小浩发现这篇浮点数的文章讲的真不错!
- 安全攻击溯源思路及案例
- 图解:「归并排序」
- STM32CubeMX6.0 + HAL + LittleVGL7.6 等学习[最全附工程源码]
- 国庆期间,我造了台计算机