为啥我的没有输出,各位大佬求救

P1217 [USACO1.5] 回文质数 Prime Palindromes

v_ever @ 2024-11-30 10:28:11

#include<stdio.h>
int m[10000],n[10000];
int fun(int n);
int main()
{
//  int m[10000],n[10000];
    long long i1,i2,i3,i4,i5,a,b,i,t=0,tt=0;
    scanf("%lld %lld",&a,&b);
    for(i1=0;i1<=9;i1++)
    for(i2=0;i2<=9;i2++)
    for(i3=0;i3<=9;i3++)
    for(i4=0;i4<=9;i4++)
    for(i5=0;i5<=9;i5++)
    {
        if(i1==0&&i2==0&&i3==0&&i4==0)
            m[t++]=i5;
        else if(i1==0&&i2==0&&i3==0)
            m[t++]=i5*10+i4*101;
        else if(i1==0&&i2==0)
            m[t++]=i3*10001+i4*1010+i5*100;
        else if(i1==0)
            m[t++]=i2*1000001+i3*100010+i4*10100+i5*1000;
        else
            m[t++]=i1*100000001+i2*10000010+i3*1000100+i4*101000+i5*10000;
    }
    for(i=0;i<t;i++)
    {
        if(fun(m[i])==1)
            n[tt++]=m[i];
    }
    for(i=0;i<tt;i++)
    {
        if(n[i]>=a&&n[i]<=b)
        {
            printf("%d\n",n[i]);
            if(i==6)
                printf("%d\n",11);
        }
    }
    return 0;
}
int fun(int n)
{
    int i;
    for(i=2;i*i<=n;i++)
    {
        if(n%i==0)
            return 0;
    }
    return 1;
}

|