1104: 纯粹素数
Time Limit: 1 Sec Memory Limit: 128 MBDescription
纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。
Input
无
Output
按从小到大的顺序输出若干个纯粹素数,每行一个。
HINT
Source
#include<iostream>
#include<cmath>
using namespace std;
int Isprime(int n)
{
int flag=1;
if(n<=1)
{return 0;}
for(int i=2;i<n;i++)
{
if(n%i==0)
{flag=0;
break;}
}
return flag;
}
bool Ischun_Prime(int n)
{
int count=0;
for(int i=4;i>=1;i--)
{
n%=(int)pow(10,i);
if(Isprime(n)) //去掉最高位仍为素数
{count++;}
}
if(count==4)
return true;
else
return false;
}
main()
{
for(int i=1000;i<3000;i++)
{
if(Ischun_Prime(i))
{cout<<i<<endl;}
}
}