• <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 - 74,  comments - 33,  trackbacks - 0
            The Embarrassed Cryptographer
            Time Limit: 2000MS Memory Limit: 65536K
            Total Submissions: 4062 Accepted: 804

            Description

            The young and very promising cryptographer Odd Even has implemented the security module of a large system with thousands of users, which is now in use in his company. The cryptographic keys are created from the product of two primes, and are believed to be secure because there is no known method for factoring such a product effectively.
            What Odd Even did not think of, was that both factors in a key should be large, not just their product. It is now possible that some of the users of the system have weak keys. In a desperate attempt not to be fired, Odd Even secretly goes through all the users keys, to check if they are strong enough. He uses his very poweful Atari, and is especially careful when checking his boss' key.

            Input

            The input consists of no more than 20 test cases. Each test case is a line with the integers 4 <= K <= 10100 and 2 <= L <= 106. K is the key itself, a product of two primes. L is the wanted minimum size of the factors in the key. The input set is terminated by a case where K = 0 and L = 0.

            Output

            For each number K, if one of its factors are strictly less than the required L, your program should output "BAD p", where p is the smallest factor in K. Otherwise, it should output "GOOD". Cases should be separated by a line-break.

            Sample Input

            143 10
            143 20
            667 20
            667 30
            2573 30
            2573 40
            0 0

            Sample Output

            GOOD
            BAD 11
            GOOD
            BAD 23
            GOOD
            BAD 31
             
            題目的大意是:給一個很大的數(shù)K,和一個普通的整數(shù)L,問K有沒有小于L的質(zhì)因子,有則輸出“BAD 那個因子”,否則輸出“GOOD”。
            首先,明顯當然要打一個素數(shù)表了。
            接下來就是關(guān)鍵部分了,讀入K,把K轉(zhuǎn)成千進制。把數(shù)字往大進制轉(zhuǎn)換能夠加快運算效率。千進制的性質(zhì)與十進制相似。例如,1234567890轉(zhuǎn)成千進制,就變成了:[1][234][567][890]。

            然后再從小到大枚舉每一個素數(shù),并對其進行高精度求余就行了。
            下面是關(guān)鍵部分的一些代碼:
            int divide(int div) //高精度求余。 
            {
                int i,ans=0;
                for(i=la-1;i>=0;i--)
                    ans=(ans*1000+a[i])%div;
                return ans;    
            }

            void makeprime() //建立素數(shù)表。 
            {
                int i,j,isprime,k,p=3;
                for(i=6;i<N;i++)
                {
                    isprime=1;
                    k=(int)sqrt(i);    
                    for(j=0;j<p;j++)
                    {
                        if(prime[j]>k+1)
                            break;
                        if(i%prime[j]==0)
                        {
                            isprime=0;
                            break;
                        }    
                    }
                    if(isprime) prime[p++]=i;    
                }    
            }

                    len=strlen(s);
                    for(i=0;i<len;i++) //轉(zhuǎn)化為千進制。 
                    {
                        t=(len-i+2)/3-1;
                        a[t]=a[t]*10+s[i]-'0';
                    }
                    la=(len+2)/3;
            posted on 2008-12-24 21:51 KNIGHT 閱讀(330) 評論(0)  編輯 收藏 引用
            <2009年4月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            常用鏈接

            留言簿(8)

            隨筆檔案

            文章檔案

            Friends

            OJ

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            青青草原1769久久免费播放| 久久久久久久91精品免费观看| 亚洲欧美成人综合久久久| 无码日韩人妻精品久久蜜桃| 国产产无码乱码精品久久鸭| 91精品国产高清久久久久久国产嫩草| 国产日韩欧美久久| 77777亚洲午夜久久多喷| 久久ww精品w免费人成| 久久WWW免费人成—看片| 亚洲愉拍99热成人精品热久久| 国产精品视频久久久| 久久伊人精品一区二区三区| 精品国产福利久久久| 国产成人精品久久| 久久久精品日本一区二区三区| 亚洲国产精品久久久天堂| 久久久久国产一区二区三区| 亚洲综合精品香蕉久久网| 日韩AV毛片精品久久久| 久久精品国产亚洲av影院| 一本一本久久a久久精品综合麻豆| 久久99精品久久久久子伦| 久久91精品国产91久| 久久精品国产一区二区电影| 国产99久久精品一区二区| 亚洲欧美成人综合久久久| 亚洲欧美另类日本久久国产真实乱对白 | 91精品观看91久久久久久 | 久久九九青青国产精品| 少妇内射兰兰久久| 亚洲AV日韩精品久久久久| 97久久国产综合精品女不卡| 精品久久久久成人码免费动漫| 美女久久久久久| 中文字幕无码久久久| 欧美久久久久久| 2020国产成人久久精品| 久久久亚洲AV波多野结衣| 欧美性猛交xxxx免费看久久久| 久久伊人中文无码|