• <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>

            為生存而奔跑

               :: 首頁 :: 聯系 :: 聚合  :: 管理
              271 Posts :: 0 Stories :: 58 Comments :: 0 Trackbacks

            留言簿(5)

            我參與的團隊

            搜索

            •  

            積分與排名

            • 積分 - 326969
            • 排名 - 74

            最新評論

            閱讀排行榜

            評論排行榜

            1:一個數被3除余1,被4除余2,被5除余4,這個數最小是幾?
            題中3、4、5三個數兩兩互質。
            則〔4,5=20;〔3,5=15;〔3,4=12;〔34,5=60。
            為了使203除余1,用20×2=40
            使154除余1,用15×3=45;
            使125除余1,用12×3=36。
            然后,40×145×236×4=274,
            因為,274>60,所以,27460×4=34,就是所求的數。

            2:一個數被3除余2,被7除余4,被8除余5,這個數最小是幾?
            題中37、8三個數兩兩互質。
            則〔7,8=56;〔3,8=24;〔3,7=21;〔3,78=168。
            為了使563除余1,用56×2=112
            使247除余1,用24×5=120
            使218除余1,用21×5=105;
            然后,112×2120×4105×5=1229
            因為,1229>168,所以,1229168×7=53,就是所求的數。

            3:一個數除以54,除以83,除以112,求滿足條件的最小的自然數。
            題中5、8、11三個數兩兩互質。
            則〔811=88;〔5,11=55;〔5,8=40;〔5,8,11=440
            為了使885除余1,用88×2=176
            使558除余1,用55×7=385;
            使4011除余1,用40×8=320。
            然后,176×4385×3320×2=2499,
            因為,2499>440,所以,2499440×5=299,就是所求的數。

            4:有一個年級的同學,每9人一排多5人,每7人一排多1人,每5人一排多2人,問這個年級至少有多少人 ?(幸福123老師問的題目)
            題中9、75三個數兩兩互質。
            則〔7,5=35;〔9,5=45;〔97=63;〔975=315。
            為了使359除余1,用35×8=280;
            使457除余1,用45×5=225;
            使635除余1,用63×2=126。
            然后,280×5225×1126×2=1877,
            因為,1877>315,所以,1877315×5=302,就是所求的數。

            5:有一個年級的同學,每9人一排多6人,每7人一排多2人,每5人一排多3人,問這個年級至少有多少人 (澤林老師的題目)
            題中97、5三個數兩兩互質。
            則〔75=35;〔9,5=45;〔97=63;〔975=315
            為了使359除余1,用35×8=280;
            使457除余1,用45×5=225;
            使635除余1,用63×2=126。
            然后,280×6225×2126×3=2508
            因為,2508>315,所以,2508315×7=303,就是所求的數。
            (例5與例4的除數相同,那么各個余數要乘的也分別相同,所不同的就是最后兩步。)

             

             

            先寫出一個兩位數62,接著在62右端寫這兩個數字的和為8,得到628,再寫末兩位數字28的和10,得到62810,用上述方法得到一個有2006位的整數:628101123……,則這個整數的數字之和是(       )。

            2006-5)÷10=200....1

            17+35*200+1=7018

            前面的62810數字和為17

            后面開始,以“1123581347”為循環節

            共循環10次,每次的和為35

            最后余1,就加上1

            所以結果是17+35*200+1=7018


            例子:PKU 1006

            因為只有三個數23 28 33 且三個數兩兩互為質數,所以“中國剩余定理”可知
            對于每一組輸入數據p, e ,i, d,所求結果為:n = (R1*p + R2*e + R3*i)%21252-d
            其中 R1%p=1, R2%e=1, R3%i=1;
            R1 = 5544 = 28*33* 6;      //28 33 的公倍數中能被23除余1的最小整數
            R2 = 14221 = 23*33*19;   //23 33 的公倍數中能被28除余1的最小整數
            R3 = 1288 = 23*28* 2;      //23 28 的公倍數中能被33除余1的最小整數
                   為了保證結果大于等于1且小于等于21252,結果修正為:n = (R1*p + R2*e + R3*i - d + 21252)%21252,并且如果n為0,則n = 21252為所求。



            問題簡單來說就是 a = ai (mod ni)   求未知數a,
             以下小結略去證明, 只是對定理作了必要的解釋, 要了解相關定理,可查閱數論資料.

            中國余數定理:
                  設 n=n1*n2...nk, 其中因子兩兩互質.有:  a-----(a1,a2,...,ak), 其中ai = a mod ni, 則 a和(a1,a2,...,ak)關系是一一對應的.就是說可以由 a求出(a1,a2,...,ak), 也可以由(a1,a2,...,ak)求出a

            推論1:
                  對于 a=ai  (mod ni) 的同余方程,有唯一解

            下面說說由(a1, a2, ..., ak)求a的方法:
            定義 mi = n1*n2*...nk / ni;   ci = mi(mf  mod ni);   其中 mi*mf  mod ni = 1;
                     則 a = (a1*c1+a2*c2+...+ak*ck)      (mod n)      (注:由此等式可求a%n, 當n很大時)

            中國剩余定理關鍵是mf的求法,如果理解了擴展歐幾里得 ax+by=d, 就可以想到:
                                 mi*mf  mod ni = 1 => mi*mf+ni*y=1;

            代碼如下:
            #include <iostream>
            #include 
            <cmath>
            using namespace std;

            const int MAXN = 100;
            int nn, a[MAXN], n[MAXN];

            int egcd(int a, int b, int &x, int &y) {
                
            int d;
                
            if (b == 0) {
                    x 
            = 1; y = 0;
                    
            return a;
                } 
            else {
                    d 
            = egcd(b, a%b, y, x);
                    y 
            -= a/b*x;
                    
            return d;
                }
            }

            int lmes() {
                
            int i, tm=1, mf, y, ret=0, m;
                
            for (i=0; i<nn; i++) tm *= n[i];
                
            for (i=0; i<nn; i++) {
                    m 
            = tm/n[i];
                    egcd(m, n[i], mf, y);
                    ret 
            += (a[i]*m*(mf%n[i]))%tm;
                }
                
            return (ret+tm)%tm;
            }

            posted on 2009-10-02 09:15 baby-fly 閱讀(440) 評論(0)  編輯 收藏 引用 所屬分類: Algorithm
            国产福利电影一区二区三区久久久久成人精品综合 | 久久天天躁狠狠躁夜夜2020一 | 久久精品国产亚洲av高清漫画| 狠狠人妻久久久久久综合| 国产激情久久久久影院老熟女| 欧美黑人激情性久久| 久久久久久综合一区中文字幕| 久久人人超碰精品CAOPOREN | 日本欧美久久久久免费播放网| 无码人妻精品一区二区三区久久| 性做久久久久久久| 久久精品国产亚洲综合色| 久久成人精品| 一级做a爰片久久毛片毛片| 无码人妻久久一区二区三区免费丨| 久久99精品久久久久久hb无码| 一本大道加勒比久久综合| 国产午夜免费高清久久影院| 日本免费一区二区久久人人澡| 国内精品久久国产大陆| 久久99精品国产99久久6| 色综合久久天天综线观看| 久久99热只有频精品8| 久久狠狠色狠狠色综合| 久久久受www免费人成| 久久无码高潮喷水| 国产精品99久久久久久猫咪| 亚洲精品乱码久久久久久久久久久久 | 久久国产视屏| 久久一本综合| 欧美亚洲色综久久精品国产| 亚洲国产精品综合久久网络| 久久久久99精品成人片牛牛影视 | 久久久WWW成人| 精品久久久一二三区| 久久精品无码专区免费东京热 | 久久99精品免费一区二区| 精品伊人久久久| 久久成人精品| 国产精品久久久久久福利69堂| 亚洲国产精品无码久久久久久曰|