• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            付翔的專欄
            在鄙視中成長 記錄成長的點滴
            posts - 106,  comments - 32,  trackbacks - 0
               1. # include<stdio.h>  
               
            2. # include<stdlib.h>  
               
            3. # include<string.h>  
               
            4. # include<math.h>  
               
            5. unsigned long data[2000] ;  
               
            6int count;  
               
            7char str[20];  
               
            8char str1[20];  
               
            9char str2[20];  
              
            10.   
              
            11int cmp(const void *a,const void *b)  
              
            12. {  
              
            13.     return *(unsigned long *)a-*(unsigned long *)b;   
              
            14. }   
              
            15.   
              
            16int issushu(unsigned long num)  
              
            17. {  
              
            18.   
              
            19.     unsigned long i,j ,k = num;  
              
            20.   
              
            21.     for (j = (unsigned long)sqrt(k),i = 2;i <= j+1;i++)  
              
            22.         if (num%i==0)  
              
            23.             return 0;  
              
            24.   
              
            25.     return 1;  
              
            26.   
              
            27. }  
              
            28void _itoah(int n,int digit )  
              
            29. {  
              
            30.     int i = 0;  
              
            31.     for(i = 0;i < digit;i ++)  
              
            32.     {  
              
            33.         //str[digit-i-1] =  n%10 + '0';  
              34.         str[digit-i-1=  n%10 + '0';  
              
            35.         n /=10;  
              
            36.     }  
              
            37.   
              
            38. }  
              
            39void _itoad(int n,int digit,int b )// 針對 奇數和偶數的不同 增加一個標志位  
              40. {  
              
            41.     int i = 0,j = digit;  
              
            42.     if(b==1)  
              
            43.         digit ++;  
              
            44.     for(i = 0;i < j;i ++)  
              
            45.     {  
              
            46.         str[digit++=  n%10 + '0';  
              
            47.         n /=10;  
              
            48.     }  
              
            49. }  
              
            50void even_huiwen(int n)  
              
            51. {  
              
            52.     long i ,j,digit = n/2,tmp = 0;  
              
            53.     //j = (long)pow(10,digit) -1;  
              54.     j = (long)pow(10,digit) -1;  
              
            55.     for(i = (long)pow(10,digit-1); i <= j;i++ ) //i代表偶數的高位//(long)pow(10,n-1); i <= j;i++ )  
              56.     {         
              
            57.   
              
            58.         _itoah(i,digit);  
              
            59.         _itoad(i,digit,0);  
              
            60.         str[n] = '\0';  
              
            61.         strcpy(str1,str);  
              
            62.         strrev(str1);  
              
            63.         if (!strcmp(str1,str))  if(issushu(atol(str)))  
              
            64.                 data[count ++= atol(str);//printf("%ld\t",atol(str)),data[count ++] = atol(str);  
              65.           
              
            66.         memset(str,NULL,sizeof(str));  
              
            67.         memset(str1,NULL,sizeof(str1));  
              
            68.   
              
            69.     }  
              
            70. }  
              
            71void odd_huiwen(int n)  
              
            72. {  
              
            73.     long i ,j,k,digit = n/2,tmp = 0;  
              
            74.     j = (long)pow(10,digit) -1;  
              
            75.   
              
            76.     for(k = 0;k < 10; k ++// 奇數位中間的數字  
              77.         for (i = (long)pow(10,digit-1);i <= j ; i ++)  
              
            78.         {  
              
            79.             _itoah(i,digit);  
              
            80.             str[digit] = k + '0';  
              
            81.             _itoad(i,digit,1);  
              
            82.             str[n] = '\0';  
              
            83.             strcpy(str1,str);  
              
            84.             strrev(str1);  
              
            85.             if (!strcmp(str1,str)) if(issushu(atol(str)))  
              
            86.                 data[count ++= atol(str);//printf("%ld\t",atol(str)),data[count ++] = atol(str);  
              87.   
              
            88.             memset(str,NULL,sizeof(str));  
              
            89.             memset(str1,NULL,sizeof(str1));  
              
            90.         }  
              
            91. }  
              
            92int  main()  
              
            93. {  
              
            94.     unsigned long a,i,j,x,y;  
              
            95.     data[0= 2,data[1= 3,data[2= 5,data[3= 7,data[4= 11;  
              
            96.     //freopen("pprime1.out","w",stdout);  
              97.     count = 5;  
              
            98.     int n;  
              
            99.   
             
            100.     //生產所有的回文素數  
             101.     for(int _digit = 3; _digit <= 8;_digit+=2)  
             
            102.     {  
             
            103.         if(_digit%2==0)  
             
            104.             even_huiwen(_digit);  
             
            105.         else  
             
            106.             odd_huiwen(_digit);  
             
            107.     }  
             
            108.       
             
            109.     qsort(data,count,sizeof(unsigned long ),cmp);  
             
            110.     scanf("%d",&n);  
             
            111.     while (n--)  
             
            112.     {  
             
            113.         scanf("%ld%ld",&x,&y);  
             
            114.         for (i=0;data[i] <=y&&i<=count;i++)  
             
            115.         {  
             
            116.             if (data[i]>=x)  
             
            117.                 printf("%ld\n",data[i]);  
             
            118.         }  
             
            119.           
             
            120.     }  
             
            121.   
             
            122.     return 0;  
             
            123.   
             
            124. }  

            posted on 2010-03-04 09:23 付翔 閱讀(507) 評論(0)  編輯 收藏 引用 所屬分類: ACM 數據結構

            <2010年3月>
            28123456
            78910111213
            14151617181920
            21222324252627
            28293031123
            45678910

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            CSDN - 我的blog地址

            博客

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            久久婷婷午色综合夜啪| 久久WWW免费人成—看片| 亚洲国产精品高清久久久| 成人妇女免费播放久久久| 久久久久久久久久久免费精品| 亚洲精品美女久久777777| 久久国产精品无码一区二区三区| 精品免费久久久久国产一区| 久久天天躁狠狠躁夜夜不卡| 久久久免费观成人影院| 91精品国产色综久久| 99精品久久精品一区二区| 伊人久久大香线蕉av不卡 | 亚洲欧美伊人久久综合一区二区| 久久综合九色综合网站| 蜜臀av性久久久久蜜臀aⅴ麻豆| 亚洲精品高清国产一久久| 伊人久久精品无码二区麻豆| 国内精品伊人久久久久影院对白| 亚洲AV日韩AV永久无码久久| 欧美麻豆久久久久久中文| 久久久噜噜噜久久| 香蕉久久一区二区不卡无毒影院 | 久久66热人妻偷产精品9| 日本加勒比久久精品| 国产精品九九久久精品女同亚洲欧美日韩综合区 | 久久精品中文字幕一区| 久久99国产精品久久99果冻传媒| 亚洲精品高清国产一线久久| 四虎影视久久久免费| 久久一区二区免费播放| 久久久久99精品成人片牛牛影视| 99久久精品国产综合一区| 99久久99久久精品国产片| 91精品国产91热久久久久福利| 蜜桃麻豆www久久| 蜜臀久久99精品久久久久久| 久久人妻少妇嫩草AV无码蜜桃| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区| 人人狠狠综合久久88成人| 欧美午夜精品久久久久免费视|