首页 > 代码库 > begin.lydsy 入门OJ题库:1104:纯粹合数

begin.lydsy 入门OJ题库:1104:纯粹合数

1104: 纯粹素数

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 258  Solved: 91
[Submit][Status][Web Board]

Description

纯粹素数是这样定义的:一个素数,去掉最高位,剩下的数仍为素数,再去掉剩下的数的最高位,余下的数还是素数。这样下去一直到最后剩下的个位数也还是素数。求出所有小于3000的四位的纯粹素数。

Input

Output

按从小到大的顺序输出若干个纯粹素数,每行一个。

HINT

 

Source

技术分享
 1 #include<iostream>  
 2 #include<cmath>  
 3 using namespace std;  
 4 int Isprime(int n)  
 5 {  
 6     int flag=1;  
 7     if(n<=1)  
 8     {return 0;}  
 9     for(int i=2;i<n;i++)  
10     {  
11         if(n%i==0)  
12         {flag=0;  
13         break;}  
14     }  
15       
16     return flag;  
17 }  
18 bool Ischun_Prime(int n)  
19 {  
20     int count=0;  
21       
22     for(int i=4;i>=1;i--)  
23     {  
24       n%=(int)pow(10,i);  
25           
26         if(Isprime(n))    
27           
28         {count++;}  
29           
30          
31     }  
32       
33     if(count==4)  
34     return true;  
35     else   
36     return false;  
37 }  
38 int main()  
39 {  
40     for(int i=1000;i<3000;i++)  
41     {  
42         if(Ischun_Prime(i))  
43         {cout<<i<<endl;}  
44     }  
45       return 0; 
46 }
View Code

 

begin.lydsy 入门OJ题库:1104:纯粹合数