为啥T了啊
查看原帖
为啥T了啊
170924
勤问型码农楼主2020/5/29 09:13
#include <iostream>
#include <cstring>
#include <math.h>

using namespace std;
int dig=0;
bool isp(int i)
{
    int s=sqrt(double(i));
    for(int j=2;j<=s;j++)
    {
        if(i%j==0) return false;

    }
    return true;
}
void digit(int i)
{
    dig=0;
    int temp =i;
    do
    {
       dig++;
       //int t_sdig=dig;
       temp/=10;
    }while(temp!=0);
}
bool ispr(int n)
{
    int tem=n;
    char c[dig]={0};
    for(int i=0;i<dig;i++)
    {
        c[i]=tem%10;
        //int c_temp=c[i];
        tem/=10;
    }
    int x=0,y=dig-1;
    do
    {
        if(c[x]==c[y])
        {
            x++;
            if(x==y)
                return false;
            y--;
        }
        else
            return false;
    }while(x!=y||x<y);
    return true;
}
int main()
{
   int a,b;
   cin>>a>>b;
   for(int i=a;i<=b;i++)
   {
        if(i%2==0||i%3==0)
            continue;
        if(isp(i))//жЪЪ§ЮЊец
       {
          // int t_dig=dig;
            digit(i);// 判断位数
            if(dig==1)
                cout<<i<<endl;
            else if(dig==2)
            {
                if(i%10==i/10%10)
                    cout<<i<<endl;
            }
            else if(dig>=3)
            {
                if(ispr(i))
                    cout<<i<<endl;
            }
       }
   }

   return 0;
}

麻烦问问各位大佬,这里为何T了啊

2020/5/29 09:13
加载中...