#7WA,#8#9#10TLE,怎么办

P2010 [NOIP2016 普及组] 回文日期

hanyaxin @ 2023-03-29 18:57:53

代码

#include<bits/stdc++.h>
using namespace std;
long long n,m,m2,m3,ans;
int main()
{
    cin>>n>>m;
    m2=m/10000%100;
    m3=m%100;
    if(n==m)
    {
        string a=to_string(n);
        string b=to_string(n);
        reverse(begin(b),end(b));
        if(a==b) 
        cout<<1;
        else
        cout<<0;
        return 0;
    }
    for(int i=n;i<=m;i++)
    {
        int r=i/10000,h=i%10000/100,a;
        if(h==1||h==3||h==5||h==7||h==8||h==10||h==12)
        a=30;
        if(h==4||h==6||h==9||h==11)
        a=30;
        if(h==2)
        {
            if((r%4==0&&r%100!=0)||r%400==0)
            a=29;
            else
            a=28;
        }
        if(h>12||h==0||(i==m&&(h>m2||a>m3))) continue;
        string c=to_string(r);
        if(h<10) c+='0';
        c+=to_string(h);
        c+=to_string(i%100); 
        string b=c;
        reverse(begin(c),end(c));
        if(c==b) ans++;
    }
    cout<<ans;
    return 0;
}

by hanyaxin @ 2023-03-30 18:28:37

现在70

#include<bits/stdc++.h>
using namespace std;
long long n,m,m1,m2,m3,ans;
int main()
{
    scanf("%d%d",&n,&m);
    m1=m/10000;
    m2=m/10000%100;
    m3=m%100;
    if(n==m)
    {
        string a=to_string(n);
        string b=to_string(n);
        reverse(begin(b),end(b));
        if(a==b) 
        cout<<1;
        else
        cout<<0;
        return 0;
    }
    for(int i=n;i<=m;i++)
    {
        int r=i/10000,h=i%10000/100,a;
        if(r>m1||h>12||h==0||(i==m&&(h>m2||i%100>m3))) continue;
        if(h==1||h==3||h==5||h==7||h==8||h==10||h==12)a=31;
        if(h==4||h==6||h==9||h==11) a=30;
        if(h==2)
        {
            if((r%4==0&&r%100!=0)||r%400==0)
            a=29;
            else
            a=28;
        }
            string c=to_string(r);
            if(h<10) c+='0';
            c+=to_string(h);
            if(i%100<10) c+='0';
            c+=to_string(i%100); 
            string b=c;
            reverse(begin(c),end(c));
            if(c==b) ans++;
    }
    cout<<ans;
    return 0;
}

by hanyaxin @ 2023-03-30 18:32:04

现在#8,9,10 TLE


by Colas_miao_ @ 2023-05-17 20:50:44

开个o2逝世


|