求助,最后一个点TLE
查看原帖
求助,最后一个点TLE
180406
FormulaOne楼主2021/1/21 10:33

rt

#include <iostream>
#include <cstdio>
using namespace std;
int n,b[10000001],ans,c,d,k;
bool a[100000001];
bool huiwen(int x)
{
    int y=x,z=0;
    do
    {
        z=z*10+y%10;
        y/=10;
    }
    while(y!=0);
    if(z==x) return true;
    else return false;
}
int main()
{
    scanf("%d%d",&c,&d);
    for(int i=2;i<=d;i++)
    {
        if(a[i]==0) b[++ans]=i;
        for(int j=1;j<=ans&&i*b[j]<=d;j++)
        {
            a[i*b[j]]=1;
            if(i%b[j]==0) break;
        }
    }
    for(int i=c;i<=d;i++)
        if(a[i]==0&&huiwen(i))
            printf("%d\n",i);
    return 0;
}
2021/1/21 10:33
加载中...