CCF系列题解--2015年3月第三题 节日
问题描述
有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形式定下来的,比如说母亲节就定为每年的五月的第二个星期日。
现在,给你a,b,c和y1, y2(1850 ≤ y1, y2 ≤ 2050),希望你输出从公元y1年到公元y2年间的每年的a月的第b个星期c的日期。
提示:关于闰年的规则:年份是400的整数倍时是闰年,否则年份是4的倍数并且不是100的倍数时是闰年,其他年份都不是闰年。例如1900年就不是闰年,而2000年是闰年。
为了方便你推算,已知1850年1月1日是星期二。
输入格式
输入包含恰好一行,有五个整数a, b, c, y1, y2。其中c=1, 2, ……, 6, 7分别表示星期一、二、……、六、日。
输出格式
对于y1和y2之间的每一个年份,包括y1和y2,按照年份从小到大的顺序输出一行。
如果该年的a月第b个星期c确实存在,则以"yyyy/mm/dd"的格式输出,即输出四位数的年份,两位数的月份,两位数的日期,中间用斜杠“/”分隔,位数不足时前补零。
如果该年的a月第b个星期c并不存在,则输出"none"(不包含双引号)。
样例输入
5 2 7 2014 2015
样例输出
2014/05/11
2015/05/10
评测用例规模与约定
所有评测用例都满足:1 ≤ a ≤ 12,1 ≤ b ≤ 5,1 ≤ c ≤ 7,1850 ≤ y1, y2 ≤ 2050。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
const int month[]={31,28,31,30,31,30,31,31,30,31,30,31};
bool is_year(int n) //判断闰年
{return n%400==0||n%4==0&&n%100!=0;
}
int main()
{int a,b,c,y1,y2;scanf("%d%d%d%d%d",&a,&b,&c,&y1,&y2);int t=2;c%=7; //0代表周日 for(int i=1850;i<=y2;i++){if(i>=y1) //指定年份 for(int j=0;j<12;j++){if(j==a-1) //指定月份 {int v=(c+7-t)%7+1;v+=(b-1)*7; //计算几号 if(v>month[j]+(j==1&&is_year(i))?1:0) printf("none\n"); //不存在 else printf("%04d/%02d/%02d\n",i,j+1,v);}t+=month[j];if(j==1&&is_year(i)) t++;t%=7;}else{t+=365;if(is_year(i)) t++;t%=7;}}return 0;
}
CCF系列题解--2015年3月第三题 节日相关推荐
- CCF系列题解--2015年12月第三题 ASCII字符画
问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术.例如,下图是用 ASCII 字符画出来的 CSPRO 字样. ..____.____..____. ...
- CCF系列题解--2018年3月第三题 URL映射
问题描述 URL 映射是诸如 Django.Ruby on Rails 等网页框架 (web frameworks) 的一个重要组件.对于从浏览器发来的 HTTP 请求,URL 映射模块会解析请求中的 ...
- CCF系列题解--2017年12月第三题 Crontab
样例输入 3 201711170032 201711222352 0 7 * * 1,3-5 get_up 30 23 * * Sat,Sun go_to_bed 15 12,18 * * * hav ...
- CCF系列题解--2016年12月第三题 权限查询
问题描述 授权 (authorization) 是各类业务系统不可缺少的组成部分,系统用户通过授权机制获得系统中各个模块的操作权限. 本题中的授权机制是这样设计的:每位用户具有若干角色,每种角色具有若 ...
- CCF系列题解--2015年12月第二题 棋类消除
问题描述 消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消 ...
- CCF系列题解--2016年9月第四题 交通规划
问题描述 G国国王来中国参观后,被中国的高速铁路深深的震撼,决定为自己的国家也建设一个高速铁路系统. 建设高速铁路投入非常大,为了节约建设成本,G国国王决定不新建铁路,而是将已有的铁路改造成高速铁路. ...
- CCF系列题解--2013年12月第四题 有趣的数字
问题描述 我们把一个数称为有趣的,当且仅当: 1. 它的数字只包含0, 1, 2, 3,且这四个数字都出现过至少一次. 2. 所有的0都出现在所有的1之前,而所有的2都出现 ...
- CCF系列题解--2016年4月第四题 方格游戏
问题描述 小明在玩一个电脑游戏,游戏在一个n×m的方格图上进行,小明控制的角色开始的时候站在第一行第一列,目标是前往第n行第m列. 方格图上有一些方格是始终安全的,有一些在一段时间是危险的,如果小明控 ...
- CCF系列题解--2016年9月第二题 火车购票
问题描述 请实现一个铁路购票系统的简单座位分配算法,来处理一节车厢的座位分配. 假设一节车厢有20排.每一排5个座位.为方便起见,我们用1到100来给所有的座位编号,第一排是1到5号,第二排是6到10 ...
最新文章
- 设计模式七:单例模式
- Redis中的发布与订阅的概念与以命令行的方式实现发布订阅举例
- GAN在Image To Image translation 和Inverse Problem中的应用
- JSP — 知识总结篇《I》【基础语法】
- [译] 深度学习的未来
- D - Maze(深度搜索+思维转换)
- 安卓system镜像分区_安卓9.0 VIVO X23手机解锁方案
- 如何降低less的版本
- 这个开源项目有点强,无需编码,可一键生成前后端代码
- OCCT学习001-----简介
- 正则验证加js大全,真的很给力!!!很全啊有木有
- Minecraft 1.19.2 Forge模组开发 12.自定义鞘翅
- 贝叶斯函数编程,测试男女性别数据
- postman接口自动化测试之判断结果是否符合预期
- 【19考研】复试英语 自我介绍模板
- 七个基本量纲_基本几何量纲定义
- 年薪170w的阿里P8征婚被骂惨,但你知道阿里P8有多厉害吗?(附阿里巴巴面经福利)
- poj1094 Sorting It All Out(拓扑排序+传递闭包)
- 外汇交易市场策略:简单最常用的四周规则与七种交易策略
- RN项目问题总结梳理