超素数
2014年第一題?超素數(shù)
題意:
超素數(shù)就是這樣的數(shù),比如2333,2是素數(shù),23是素數(shù),233是素數(shù),2333是素數(shù),找出所有的四位超素數(shù)。每行輸出六個,數(shù)之間空格隔開。
?
思路:
先用埃氏篩選獲取素數(shù)表,然后遍歷每個四位數(shù)判斷是否為素數(shù)。
?
代碼:
1 /* 2 2014_1_超素數(shù) 3 */ 4 5 #include <stdio.h> 6 #include <string.h> 7 #include <math.h> 8 #include <stdlib.h> 9 #include <time.h> 10 11 #define maxn 10001 12 // 若pri[i]=0表示i為素數(shù) 13 int pri[maxn] = {0}; 14 15 // 素數(shù)表的獲取,埃氏篩選 16 void findPrime() { 17 int i, j; 18 // 1 不為素數(shù) 19 for(i=2; i<maxn; ++i) { 20 if(!pri[i]) { // 為素數(shù) 21 for(j=i+i; j<maxn; j+=i) { 22 pri[j] = 1; // 篩選倍數(shù) 23 } 24 } 25 } 26 } 27 28 int main() { 29 int i, pnum=0; 30 findPrime(); // 獲取素數(shù)表 31 for(i=2000; i<10000; ++i) { // 挨個遍歷 32 int n1=i/1000, n2=i/100,n3=i/10; 33 // 判斷是否為超素數(shù) 34 if(!pri[n1] && !pri[n2] && !pri[n3] && !pri[i]) { 35 printf("%d", i); 36 if(pnum%6 != 5) { 37 printf(" "); 38 } else { 39 printf("\n"); 40 } 41 pnum++; 42 } 43 } 44 45 return 0; 46 }?
轉(zhuǎn)載于:https://www.cnblogs.com/coderJiebao/p/HustTest28.html
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
- 上一篇: 360急速浏览器JS的调试
- 下一篇: sqlserver清除缓存(转载)