• <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>
            隨筆 - 19, 文章 - 0, 評論 - 2, 引用 - 0
            數據加載中……

            hdu2303_The Embarrassed Cryptographer

                    好幾天都沒有刷題了,心里好煩躁啊!

                    今天終于又做了一個不是很水的題目,數論的,大整數取余,直接暴力過了。其中又學了一種素數的篩選法,效率比我以前用的方法都要高。他不計算,只是篩選。這樣一來效率就高了很多。還有一個地方,就是大整數的取余,從高位,到低位,邊乘邊取余,根據的是同余定理。


            #include <stdio.h>
            #include 
            <string.h>
            #include 
            <stdlib.h>

            int p[1000000] ;
            char pr[1000000] ;
            int len, pnum, num[14] ;

            void prime( )
            {
                
            int i, j ;
                
            // 篩選素數 
                for( i=2; i<1000000++i ){
                    pr[i] 
            = 1 ;
                }

                
            for( i=2,pnum=0; i<1000000++i ){
                    
            if( pr[i] ){
                        p[pnum
            ++= i ;
                        
            for( j=i+i; j<1000000; j+=i )
                            pr[j] 
            = 0 ;
                    }

                }

            }


            int mod( int n )
            {
                __int64 m
            =0 ;
                
            int i ;
                
            // 求余數 
                for( i=len-1; i>=0--i ){
                    m 
            = ( m*100000000+num[i] ) % n ;
                }

                
            return m ;
            }


            int main()
            {
                
            char a[111] ;
                
            int i, j, div, flag ;
                
                prime( ) ;
                
                
            while( scanf("%s%d", a, &div ) && div && a[0]!='0' ){
                    len 
            = strlen( a ) ;
                    
            for( i=0; i<14++i )
                        num[i] 
            = 0 ;
                    
            for( i=0; i<len; ++i ){
                        
            //逢一億進位 
                        j = (len+7-i) / 8 - 1 ;
                        num[j] 
            = num[j]*10 + a[i]-'0' ;
                    }

                    len 
            = (len+7)/8 ;
                    flag 
            = 1 ;
                    
            for( i=0; p[i]<div && i<pnum; ++i ){
                        
            if( mod( p[i] ) == 0 ){
                            flag 
            = 0 ;
                            
            break ;
                        }

                    }

                    
            if( flag )
                        printf(
            "GOOD\n") ;
                    
            else
                        printf(
            "BAD %d\n", p[i] ) ;
                }

                system(
            "pause");
                
            return 0 ;
            }

            posted on 2009-05-30 15:38 祝你好運! 閱讀(318) 評論(0)  編輯 收藏 引用

            99国内精品久久久久久久| 久久综合欧美成人| 久久黄色视频| 精品综合久久久久久97超人 | 亚洲AV无一区二区三区久久| 精品国产婷婷久久久| 99久久精品费精品国产| 久久综合给合综合久久| 五月丁香综合激情六月久久| 青青草原综合久久| 久久综合九色综合网站 | 91精品国产高清久久久久久91| 94久久国产乱子伦精品免费| 久久91精品国产91| 99久久婷婷免费国产综合精品| 亚洲精品99久久久久中文字幕| 国产一区二区三区久久| 久久婷婷国产剧情内射白浆| 办公室久久精品| 久久99中文字幕久久| 国产毛片欧美毛片久久久 | 久久久噜噜噜久久中文字幕色伊伊 | 亚洲AV无码久久寂寞少妇| 久久久精品久久久久特色影视| 国产Av激情久久无码天堂 | 欧美久久精品一级c片片| 奇米影视7777久久精品| 久久久久久伊人高潮影院| 欧美精品一区二区久久| 久久国产精品一区| 精品无码久久久久久国产| 成人久久综合网| 国产精品久久久天天影视| 亚洲午夜久久久久妓女影院| 欧美精品国产综合久久| 久久亚洲av无码精品浪潮| 色综合色天天久久婷婷基地| 四虎国产精品免费久久久| 久久国产精品-国产精品| 久久综合欧美成人| 国产精自产拍久久久久久蜜|