蒻爆了誒(作者本人)
查看原帖
蒻爆了誒(作者本人)
907683
luo_gu_niang_de_gou楼主2023/1/9 17:17
#include <bits/stdc++.h>
using namespace std;
int l,r,a,b,x,yf,rq,t[15]{31,29,31,30,31,30,31,31,30,31,30,31},cnt,hw;
inline int dz(int n)
{
    int nn;
    for(int i = 1;i<=4;i++) 
    {
        nn=n%10+nn*10;
        n/=10;
    }
    return nn;
}
int main()
{
    cin>>a>>b;
    l=a/10000;
    r=b/10000;
    for(int i=l;i<=r;i++)
    {
        x=dz(i);
        yf=x/100;
        rq=x%100;
        if(yf>=1&&yf<=12)
        {
            if(rq<=t[yf])
            {
                hw=i*10000+x;
                if(hw>=a&&hw<=b)
                {
                    ++cnt;
                }
            }
        } 
    }
    cout<<cnt;
    return 0;
}

每次只有60分,不知道有没有能改进的。想法是,枚举每一年的回文年,检验是否合法,用cnt记录。

2023/1/9 17:17
加载中...