Luogu P2010 回文日期 // 暴力

十分SB的一道题

我刚开始真就一天一天往前推,结果TM超时了;

还写了70行......

去看题解发现其实回文日期很少,我们可以枚举回文日期并判断他们是否在范围内.

由于月日限制比年份多,所以枚举月日并将它们回文处理.....

而且还不需要判闰年,因为0229的反串是9220,而9220是闰年.直接calendar中写29就行了.

然后应该是一个超快的跑速.....把逐个推按在地上打

我好菜啊啊啊啊啊啊啊啊啊啊啊啊

#include<bits/stdc++.h>

using namespace std ;

int calen[13]={-1,31,29,31,30,31,30,31,31,30,31,30,31};
int a,b,year,ans;

int main(){
    cin>>a>>b;
    for(int i=1;i<=12;i++){
        for(int j=1;j<=calen[i];j++){
            int now = i*100 + j;
            int who = now;year = 0;
            while(who){
                year=year*10+who%10;
                who/=10;
            }
            if(now<1000) year*=10;
            now += year * 10000;
//            cout<<now<<endl;
            if(now>=a && now<=b) ans++;
        }
    }
    cout<<ans<<endl;
    return 0;
}

TAG:SIN_XIII ⑨

posted @ 2019-07-08 11:55  SIN_XIII  阅读(110)  评论(0编辑  收藏  举报