<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 495,  comments - 11,  trackbacks - 0


    15 = 15
    15 = 7 + 8
    15 = 4 + 5 + 6
    15 = 1 + 2 + 3 + 4 + 5

    首先考慮一般的形式,設(shè)n為被劃分的正整數(shù),x為劃分后最小的整數(shù),如果n有一種劃分,那么


    結(jié)果就是x,如果有兩種劃分,就是x和x x + 1, 如果有m種劃分,就是 x 、x x + 1 、 x x + 1 x + 2 、... 、x x + 1 x + 2 ... x + m - 1


    將每一個結(jié)果相加得到一個公式(i * x + i * (i - 1) / 2) = n,i為當(dāng)前劃分后相加的正整數(shù)個數(shù)。


    滿足條件的劃分就是使x為正整數(shù)的所有情況。


    如上例,當(dāng)i = 1時,即劃分成一個正整數(shù)時,x = 15, 當(dāng)i = 2時, x = 7。


    當(dāng)x = 3時,x = 4, 當(dāng)x = 4時,4/9,不是正整數(shù),因此,15不可能劃分成4個正整數(shù)相加。


    當(dāng)x = 5時,x = 1。

    Java代碼

    public static int split(int n) {
    ?? int m = 0, x, t1, t2;
    ?? for (int i = 1; (t1 = i * (i - 1) / 2) < n; i++) {
    ??? t2 = (n - t1);
    ??? x = t2 / i;
    ??? if (x <= 0)
    ???? break;
    ??? if ((n - t1) % i == 0) {
    ???? System.out.print(x + " ");
    ???? for (int j = 1; j < i; j++) {
    ????? System.out.print(x + j + " ");
    ???? }
    ???? System.out.println();
    ???? m++;
    ??? }
    ?? }
    ?? return m;
    }

    posted on 2009-08-29 02:28 jadmin 閱讀(107) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 狼友av永久网站免费观看| 亚洲国产精品张柏芝在线观看| 亚洲人成色99999在线观看| 亚洲成AⅤ人影院在线观看| ass亚洲**毛茸茸pics| 日本在线高清免费爱做网站| 亚洲综合亚洲国产尤物| 中文毛片无遮挡高潮免费| 国产网站免费观看| 真正全免费视频a毛片| 亚洲精品国产电影| a级片免费在线观看| 亚洲av无码乱码国产精品| 69视频免费在线观看| 久久精品国产亚洲av麻豆图片| 成人无遮挡毛片免费看| 亚洲国产无线乱码在线观看| 免费人成视频在线观看视频| 午夜成人无码福利免费视频| 亚洲国产a∨无码中文777| 69视频免费观看l| 亚洲高清国产拍精品熟女| 亚洲免费日韩无码系列| 久久大香香蕉国产免费网站| 亚洲一本之道高清乱码| 噜噜嘿在线视频免费观看| 亚洲日韩区在线电影| 人禽杂交18禁网站免费| 风间由美在线亚洲一区| 蜜桃视频在线观看免费网址入口 | 亚洲AV无码精品色午夜果冻不卡 | 久久青青草原亚洲av无码app| 一级看片免费视频| 亚洲电影一区二区三区| 国语成本人片免费av无码| 日韩精品无码免费视频| 亚洲精品视频免费看| 日本二区免费一片黄2019| 伊人免费在线观看| 亚洲色成人网站WWW永久四虎 | 1a级毛片免费观看|