<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        將一個整數劃分為多個正整數之和

        來源:懂視網 責編:小采 時間:2020-11-09 14:46:10
        文檔

        將一個整數劃分為多個正整數之和

        將一個整數劃分為多個正整數之和:整數劃分問題是將一個正整數n拆分成一組數連加并等于n的形式,顯然這組數中最大加數不大于n。 令n為需要劃分的整數,m為劃分后的最大整數。例如將6劃分為最大加數為6的劃分形式如下: 65 + 14 + 2, 4 + 1 + 13 + 3, 3 + 2 +1, 3 + 1 + 1
        推薦度:
        導讀將一個整數劃分為多個正整數之和:整數劃分問題是將一個正整數n拆分成一組數連加并等于n的形式,顯然這組數中最大加數不大于n。 令n為需要劃分的整數,m為劃分后的最大整數。例如將6劃分為最大加數為6的劃分形式如下: 65 + 14 + 2, 4 + 1 + 13 + 3, 3 + 2 +1, 3 + 1 + 1

        整數劃分問題是將一個正整數n拆分成一組數連加并等于n的形式,顯然這組數中最大加數不大于n。 令n為需要劃分的整數,m為劃分后的最大整數。例如將6劃分為最大加數為6的劃分形式如下: 65 + 14 + 2, 4 + 1 + 13 + 3, 3 + 2 +1, 3 + 1 + 1 + 12 + 2 + 2, 2 + 2

        整數劃分問題是將一個正整數n拆分成一組數連加并等于n的形式,顯然這組數中最大加數不大于n。

        令n為需要劃分的整數,m為劃分后的最大整數。例如將6劃分為最大加數為6的劃分形式如下:

        6
        
        5 + 1
        
        4 + 2, 4 + 1 + 1
        
        3 + 3, 3 + 2 +1, 3 + 1 + 1 + 1
        
        2 + 2 + 2, 2 + 2+ 1 + 1, 2 + 1 + 1 + 1 + 1
        
        1 + 1 + 1 + 1 +1 + 1

        共11中劃分方法。若劃分后最大整數為2,則劃分形式為最后兩行,共4種劃分方法。易得可利用遞歸方式求解,設劃分函數split(int n,int m),其中n為需要劃分的整數,m為劃分后的最大加數。

        (1) m < 1 或者n < 1時,劃分方式共0種。

        (2) m = 1或者n = 1時,劃分方式共1中。

        (3) n < m時,因為整數劃分中最大加數不可能大于n,因此此種情況等價為split(n, n)。

        (4) m=n時,劃分分為兩種:一種是最大加數為m-1的,共split(n, m-1)中劃分方式;一種是其中一個加數為m的(當然不存在另一個加數,或者說另一個加數為0)。因此,m=n時共split(n, m-1) + 1種劃分方式。

        (5) m < n時,同樣存在兩種劃分:一種是最大加數m-1的,共split(n, m-1);另外一種是其中一個加數為m的,緊接著只需要對n-m進行劃分即可且最大加數為m,因此共split(n - m,m)種劃分方式。因此,m < n時共split(n, m-1) + split(n-m, m)中劃分。

        源代碼如下:

        #include 
        int split(int n, int m)
        {
         if(n < 1 || m < 1) return 0;
         if(n == 1 || m == 1) return 1;
         if(n < m) return split(n, n);
         if(n == m) return (split(n, m - 1) + 1);
         if(n > m) return (split(n, m - 1) + split((n - m), m));
        }
        

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        將一個整數劃分為多個正整數之和

        將一個整數劃分為多個正整數之和:整數劃分問題是將一個正整數n拆分成一組數連加并等于n的形式,顯然這組數中最大加數不大于n。 令n為需要劃分的整數,m為劃分后的最大整數。例如將6劃分為最大加數為6的劃分形式如下: 65 + 14 + 2, 4 + 1 + 13 + 3, 3 + 2 +1, 3 + 1 + 1
        推薦度:
        標簽: 一個 多個 問題
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲国产精品综合久久2007| 亚洲av无码一区二区三区不卡| 亚洲AV无码久久久久网站蜜桃| 久久国产精品萌白酱免费| 亚洲人成网7777777国产| 国产福利在线观看永久免费| 久久久久亚洲AV无码专区网站 | 精品亚洲aⅴ在线观看| 久久午夜伦鲁片免费无码| 久久精品国产亚洲AV嫖农村妇女| 8090在线观看免费观看| 亚洲国产精品一区二区久| 在线观看特色大片免费视频| 亚洲av永久无码精品网址| 国产啪亚洲国产精品无码| 免费国产成人午夜在线观看| 久久精品国产亚洲av日韩| 最近最新的免费中文字幕| 国产精品亚洲五月天高清| 国产亚洲日韩在线三区| 色猫咪免费人成网站在线观看| 亚洲不卡1卡2卡三卡2021麻豆| 国产精品久久香蕉免费播放| 一级做a毛片免费视频| 亚洲精品国产成人99久久| 成人免费777777| 久99久无码精品视频免费播放| 精品久久亚洲中文无码| 久久精品国产亚洲AV| 无码精品人妻一区二区三区免费看| 亚洲天堂中文资源| 免费无码看av的网站| 亚欧洲精品在线视频免费观看| 亚洲国产一区二区三区青草影视| 在线观看日本免费a∨视频| 国产精品内射视频免费| 亚洲人成电影网站| 国产亚洲精品无码专区| 国产大片91精品免费观看不卡| 菠萝菠萝蜜在线免费视频| 亚洲制服中文字幕第一区|