c语言66分求助大神,求优化,3个MLE
查看原帖
c语言66分求助大神,求优化,3个MLE
809436
TBA3D楼主2022/10/18 21:06
#include <stdio.h>
#include <math.h>
int zhishu(int x){
    int m,flag=1;
    for(m=2;m<=sqrt(x);m++){
            if(x%m==0){
                flag=0;
                break;
            }
    }
    if(flag){
        return 1;
    }
    else{
        return 0;
    }
}
int huishu(int x){
    int y,f=0;
    y=x;
    while (y!=0)
    {
        f=f*10+y%10;
        y/=10;
    } //这个循环相当于把x这个数从新让每个数倒着放置组成
    if (f==x) return 1;
    else return 0;
}
int main()
{   
    int a,b,i;
    scanf("%d %d",&a,&b);
    for(i=a;i<=b;i++){
        if((i>10&&i<100&&i!=11)||(i>1000&&i<10000)||(i>100000&&i<1000000)||(i>10000000&&i<100000000)){
            continue;
        }
        if(zhishu(i)&&huishu(i)){
            printf("%d\n",i);
        }
    }
    return 0;
}
2022/10/18 21:06
加载中...