150303节日
来源:互联网 发布:php解析html代码 编辑:程序博客网 时间:2024/05/01 01:32
#include<stdio.h>
#include<string.h>
#define runnian(x) x%100!=0&&x%4==0||x%400==0?1:0
int dayofmonth[13][2]={
0,0,31,31,28,29,31,31,30,30,31,31,30,30,
31,31,31,31,30,30,31,31,30,30,31,31
};
struct date{
int Day,Month,Year;
void next(){
Day++;
if(Day>dayofmonth[Month][runnian(Year)]){
Day=1;
Month++;
}
if(Month>12){
Month=1;
Year++;
}
}
};
int buf[3001][13][32];
int main (){
date t;
int cnt=0;
int a,b,c,y,d,y1,y2,l,i;
t.Year=0;t.Month=1;t.Day=1;
while(t.Year<3001){
buf[t.Year][t.Month][t.Day]=cnt;
t.next();
cnt++;
}
while(scanf("%d %d %d %d %d",&a,&b,&c,&y1,&y2)!=EOF){//a月 第b个 星期c
for(y=y1;y<=y2;y++){
int l;//l是y年a月1号的星期数
l=((buf[y][a][1]-buf[2016][3][20])%7+7)%7;
int x=b;//注意 每次循环不能改变b的值,而应该交给另一个变量!!!
d=0;
l--;
l=l%7;
c=c%7;
while(x!=0){
d++;
l++;
l=l%7;
if(l==c){
x--;
}
}
if(d>dayofmonth[a][runnian(y)]){
printf("none\n");
}
else{
printf("%04d/%02d/%02d\n",y,a,d);
}
}
}
return 0;
#include<string.h>
#define runnian(x) x%100!=0&&x%4==0||x%400==0?1:0
int dayofmonth[13][2]={
0,0,31,31,28,29,31,31,30,30,31,31,30,30,
31,31,31,31,30,30,31,31,30,30,31,31
};
struct date{
int Day,Month,Year;
void next(){
Day++;
if(Day>dayofmonth[Month][runnian(Year)]){
Day=1;
Month++;
}
if(Month>12){
Month=1;
Year++;
}
}
};
int buf[3001][13][32];
int main (){
date t;
int cnt=0;
int a,b,c,y,d,y1,y2,l,i;
t.Year=0;t.Month=1;t.Day=1;
while(t.Year<3001){
buf[t.Year][t.Month][t.Day]=cnt;
t.next();
cnt++;
}
while(scanf("%d %d %d %d %d",&a,&b,&c,&y1,&y2)!=EOF){//a月 第b个 星期c
for(y=y1;y<=y2;y++){
int l;//l是y年a月1号的星期数
l=((buf[y][a][1]-buf[2016][3][20])%7+7)%7;
int x=b;//注意 每次循环不能改变b的值,而应该交给另一个变量!!!
d=0;
l--;
l=l%7;
c=c%7;
while(x!=0){
d++;
l++;
l=l%7;
if(l==c){
x--;
}
}
if(d>dayofmonth[a][runnian(y)]){
printf("none\n");
}
else{
printf("%04d/%02d/%02d\n",y,a,d);
}
}
}
return 0;
}
/*思路:求出每年第a个月第一天星期几(利用和已知星期几的日期的差值 与7做运算)
然后依次计数直到找到第b个星期c
*/
0 0
- 150303节日
- 节日
- 节日
- 节日
- 节日
- 节日快乐
- 节日快乐
- 节日快乐
- 节日快乐
- 节日快乐
- 节日倒计时
- 节日快乐!
- 中国传统节日
- 节日快乐
- 节日快乐
- 【CCF】节日
- CCF 节日
- CCF--节日
- c++作业
- Spark-1.6.1 Hadoop-2.6.4 VMware Ubuntu 分布式集群搭建 全过程
- 55. Jump Game
- Android App完全退出方式
- 为RecyclerView添加item的点击事件
- 150303节日
- SpringMVC上传文件错误
- 使用Android Studio布局加载器异常的问题
- DownloadManager的使用和介绍
- 线程的同步对象
- MySQL的优化
- Robotium方法
- C++作业2
- JavaScript 笔记 - <script>标签 async 属性 (异步脚本)