66分,后三点tle求助!
查看原帖
66分,后三点tle求助!
379331
zhi0mx楼主2021/2/16 17:37
#include <bits/stdc++.h>
using namespace std;
bool zs(int x)
{
    for (int i=2;i*i<=x;i++)
        if (x%i==0 && x!=i)
            return 0;
    return 1;
}
bool hv(int x)
{
    int a[110],b[110],y=x,l=0,i=1;
    while (y)
    {
        a[i]=y%10;
        y/=10;
        l++;
        i++;
    }
    if (x!=11 && l%2==0)
        return 0;
    for (int i=1;i<=l;i++)
    {
        b[i]=a[l-i+1];
        if (a[i]!=b[i])
            return 0;
    }
    return 1;
}
int main()
{
    int l,r;
    cin>>l>>r;
    if (l%2==1)
        for (int i=l;i<=r;i+=2)
            if (zs(i) && hv(i))
                cout<<i<<endl;
    if (l%2==0)
        for (int i=l;i<=r;i++)
            if (zs(i) && hv(i))
                cout<<i<<endl;
    return 0;
}
2021/2/16 17:37
加载中...