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

            求兩個或N個數的最大公約數(gcd)和最小公倍數(lcm)的較優算法

            //兩個數的最大公約數--歐幾里得算法

            int gcd(int a, int b)

            {

                 
            if (a < b)

                      swap(a, b);

                 
            if (b == 0)

                       
            return a;

                  
            else

                        
            return gcd(b, a%b);

            }



            //n個數的最大公約數算法

            //說明: 

            //把n個數保存為一個數組

            //參數為數組的指針和數組的大小(需要計算的數的個數)

            //然后先求出gcd(a[0],a[1]), 然后將所求的gcd與數組的下一個元素作為gcd的參數繼續求gcd

            //這樣就產生一個遞歸的求ngcd的算法

             

            int ngcd(int *a, int n)

            {

                
            if (n == 1)  return *a;

                
            return gcd(a[n-1], ngcd(a, n-1));

            }


             
            //兩個數的最小公倍數(lcm)算法

            //lcm(a, b) = a*b/gcd(a, b)

            int lcm(int a, int b)

            {

                    
            return a*b/gcd(a, b);

            }


             

            //n個數的最小公倍數算法

            //算法過程和n個數的最大公約數求法類似

            //求出頭兩個的最小公倍數,再將欺和大三個數求最小公倍數直到數組末尾

            //這樣產生一個遞歸的求nlcm的算法

            int nlcm(int *a, int n)

            {

                  
            if (n == 1)

                        
            return *a;

                  
            else

                        
            return lcm(a[n-1], nlcm(a, n-1));

            }

            posted on 2010-10-02 14:20 Vontroy 閱讀(3551) 評論(1)  編輯 收藏 引用 所屬分類: 數論

            評論:
            # re: 求兩個或N個數的最大公約數(gcd)和最小公倍數(lcm)的較優算法[未登錄] 2011-01-23 18:18 | 路人甲
            初學ACM....算法謝啦~雖然暫時難以理解....研究下  回復  更多評論
              
            青青草国产成人久久91网| 久久久久久久久无码精品亚洲日韩 | 日韩亚洲欧美久久久www综合网 | 亚洲七七久久精品中文国产| 偷窥少妇久久久久久久久| 久久超碰97人人做人人爱| 久久播电影网| 久久久久久亚洲AV无码专区| 91精品国产91久久久久久| 午夜精品久久久内射近拍高清| 伊人伊成久久人综合网777| 久久w5ww成w人免费| 久久e热在这里只有国产中文精品99| 亚洲欧美成人久久综合中文网 | 老色鬼久久亚洲AV综合| 久久久久亚洲AV成人网人人网站| 国内精品久久久久影院薰衣草| 国产国产成人久久精品| 久久国产乱子伦免费精品| 久久天天婷婷五月俺也去 | 久久精品国产亚洲AV蜜臀色欲| AAA级久久久精品无码区| 久久99国产综合精品女同| 久久久久高潮综合影院| 久久91精品国产91| 久久久久九国产精品| 亚洲国产成人久久综合碰碰动漫3d | 日本精品一区二区久久久| 国产精品日韩欧美久久综合| 97久久国产亚洲精品超碰热| 久久精品国产精品亚洲毛片| 99精品久久久久久久婷婷| 久久人做人爽一区二区三区| 日韩一区二区三区视频久久| 色99久久久久高潮综合影院| 久久久久亚洲爆乳少妇无| 久久强奷乱码老熟女| 久久中文字幕无码专区| 亚洲性久久久影院| 久久人人爽人人人人爽AV| 久久成人国产精品免费软件|