节日

来源:互联网 发布:淘宝店托管多少钱 编辑:程序博客网 时间:2024/04/28 06:57
#include <iostream>
#include <math.h>
#include<algorithm>
#include<iostream>
#include<cstring>
#include <cstdio>
using namespace std;
int day[2][13] = {{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
                    ,{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
                  };

bool isRunNian(int y){
    if(y%400==0)
        return true;
    if((y%4==0)&&(y%100 != 0))
        return true;
    return false;
}
int main()
{
    int y1, y2, a, b, c;
    cin>>a>>b>>c>>y1>>y2;
    if(c == 7)c = 0;
    int l = min(y1, y2), r = max(y1, y2);
    int d = 0, nw = 2;
    for(int i=1850;i<l;i++){
        if(isRunNian(i))d+=366;
        else d+=365;
    }
    nw = (nw +d)%7;
    for(int i=l;i<=r;i++){
        for(int j=1;j<=12;j++){
            if(j == a){
                int cnt = 0;
                bool fg  = false;
                for(int k = 1 ; k <= day[isRunNian(i)][j]; k++){
                    if(nw == c && (!fg))
                        cnt++;
                    if(cnt == b && (!fg)){
                        printf("%d/%02d/%02d\n",i,j,k);
                        fg = true;
                    }
                    if(k == day[isRunNian(i)][j] && cnt < b)
                        cout<<"none"<<endl;
                    nw = (nw + 1)%7;
                }
            }
            else{
                nw += day[isRunNian(i)][j];
                nw %= 7;
            }
        }
    }
    return 0;
}

0 0
原创粉丝点击