• <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>
            #include? < stdio.h >

            int ?result[ 500 ];

            int ?main()
            {
            ????
            int ?n;
            ????
            ????
            while (?scanf( " %d " , & n) != ?EOF?)
            ????
            {
            ????????
            int ?sum = ? 0 ;
            ????????
            int ?len = ? 0 ;
            ????????
            int ?value = ? 2 ;
            ????????
            ????????
            while (? true ?) {
            ????????????sum
            += ?value;
            ????????????result[len
            ++ ] = ?value ++ ;
            ????????????
            if (?sum + ?value > ?n?)? break ;
            ????????}

            ????????value
            -- ;
            ????????
            int ?left = ?n - ?sum;
            ????????
            if (?value == ?left?)
            ????????
            {
            ????????????
            for (? int ?i = ? 0 ;?i < ?len;? ++ i?)?result[i] ++ ;
            ????????????result[len
            - 1 ] ++ ;
            ????????}

            ????????
            else ? for (? int ?i = ?len - ? 1 ;?i >= ? 0 ,?left > ? 0 ;?i -- ,?left -- ?)?result[i] ++ ;
            ????????
            ????????
            for (? int ?i = ? 0 ;?i < ?len;? ++ i?)?
            ????????
            {
            ????????????
            if (?i == ? 0 ?)?printf( " %d " ,?result[i]?);
            ????????????
            else ????????printf( " ?%d " ,?result[i]?);
            ????????}

            ????????printf(
            " \n " );
            ????}

            ????
            ????
            return ? 0 ;
            }


            做法就是求出以2起始的最大連續自然數序列之和sum,使得sum的值不超過輸入數n,
            然后分情況討論:

            設此最大序列為2、3、……、w,則:

            1。若剩余值(n-sum)等于w,則最后輸出序列為:3、4、……、w、w+2,即將原最大序列每項加1,再將最后剩余的一個1加到最后一項上。

            2。若剩余值(n-sum)小于w,則從序列的最大項i開始,從大到小依次將每項加1,直到剩余值用完。

            posted on 2008-10-29 10:26 Darren 閱讀(513) 評論(0)  編輯 收藏 引用 所屬分類: 動態規劃
            亚洲精品97久久中文字幕无码| 国产精品18久久久久久vr| 色婷婷久久综合中文久久一本| 麻豆精品久久精品色综合| 日日狠狠久久偷偷色综合96蜜桃| 久久午夜无码鲁丝片秋霞| 精品久久久久久中文字幕| 天天综合久久一二三区| 99国产精品久久久久久久成人热| 久久午夜综合久久| 国产91色综合久久免费分享| 怡红院日本一道日本久久 | 婷婷综合久久中文字幕蜜桃三电影| 777午夜精品久久av蜜臀| 国产精品狼人久久久久影院 | 伊人久久国产免费观看视频| 精品久久久久久综合日本| 亚洲欧美日韩中文久久| 欧美日韩中文字幕久久久不卡| 国产一级做a爰片久久毛片| 老男人久久青草av高清| 久久丝袜精品中文字幕| 99久久精品免费看国产一区二区三区| 久久久这里有精品| 综合久久精品色| 中文成人无码精品久久久不卡 | 久久国产精品成人免费 | 精品久久久久久久无码| 97精品依人久久久大香线蕉97| 久久久精品久久久久影院| 国产三级精品久久| 精品无码人妻久久久久久| 国产精品久久久天天影视香蕉 | 久久精品卫校国产小美女| 久久久这里只有精品加勒比| 欧美精品九九99久久在观看| 亚洲国产成人久久精品99| 久久久久久久久久久久久久 | 人人狠狠综合久久亚洲88| 国产69精品久久久久9999| 久久久精品视频免费观看|