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

            Why so serious? --[NKU]schindlerlee

            pku1505 AC此題分4步

            國家集訓隊2000論文集/方奇論文中的一題
            1.dp ,算最小完成時間, 論文中貌似把max寫成min了。。
            二分求最小完成時間亦可,而且更快,誰讓咱們看了論文了呢
            for(i = 1;i <= n;i++) {
                dp[1][i] = sum[1][i];
            }
            for(i = 2;i <= m;i++) {
                for(j = 1;j <= n;j++) {
                    dp[i][j] = inf;
                }
            }

            for(i = 2;i <= m;i++) {
                for(j = i;j <= n;j++) {
                    for(k = 1;k < j;k++) { // 至少抄一本
                        int t = max( dp[i-1][k] , sum[k+1][j]);
                        if(dp[i][j] > t) {
                            dp[i][j] = min(dp[i][j] ,t);
                        }
                    }
                }
            }
            2.從后向前推把更大的工作量留給后面的人,標記'/'出現的位置

            int limit = dp[m][n],sum,cnt;
            pre[n] = 0,cnt = 1;
            for(i = n-1,sum = num[n];i > 0;i--) {
                if(sum + num[i] > limit) {
                    pre[i] = 1;
                    cnt ++;
                    sum = num[i];
                }else {
                    pre[i] = 0;
                    sum += num[i];
                }
            }
            3.如果'/'的數量小于題目給出的,從頭尋找第一個不是'/'的位置,標記之
            for(i = 1,j = cnt;j < m && i <= n;i++) {
                if(pre[i] == 0) {
                    pre[i] = 1;
                    j++;
                }
            }
            4.輸出
            for(i = 1;i < n;i++) {
                printf("%d ",num[i]);
                if(pre[i])
                    printf("/ ");
            }
            printf("%d\n",num[i]);

            注意:不要嘗試再dp轉移的時候標記轉移方向,試圖得出標記‘/’的位置,這個想法是錯的,仔細想一下就知道了,
            再不濟AC以后再試試

            posted on 2009-09-16 01:32 schindlerlee 閱讀(1238) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告

            激情五月综合综合久久69| 日日噜噜夜夜狠狠久久丁香五月| 99久久99久久精品免费看蜜桃| 日韩人妻无码精品久久久不卡| 狠狠狠色丁香婷婷综合久久五月| 久久97久久97精品免视看| 久久久久亚洲AV无码专区首JN | 俺来也俺去啦久久综合网| 国产成人精品久久亚洲高清不卡| 午夜福利91久久福利| 国内精品久久久久久99蜜桃| 久久久久国产精品三级网| 国内精品久久久久久99| 亚洲婷婷国产精品电影人久久 | 久久国产精品免费一区二区三区| 久久久久亚洲精品日久生情| 99久久99久久精品国产| 久久夜色精品国产欧美乱| 精品久久久久久无码不卡| 品成人欧美大片久久国产欧美... 品成人欧美大片久久国产欧美 | 久久一区二区三区免费| 久久综合精品国产二区无码| 亚洲国产精品综合久久一线| 丁香久久婷婷国产午夜视频| 日本久久久久亚洲中字幕| 久久午夜无码鲁丝片秋霞 | 久久综合九色欧美综合狠狠| 久久被窝电影亚洲爽爽爽| 日韩精品久久久久久免费| 久久九九久精品国产免费直播| 久久婷婷五月综合成人D啪| 久久综合九色综合久99| 久久精品国产91久久综合麻豆自制 | 色综合久久中文色婷婷| 精品久久久久香蕉网| 久久99精品久久只有精品| 日韩精品无码久久久久久| 久久国产亚洲精品无码| 国产精品久久久久久久久| 91精品国产91久久久久福利| 国产精品青草久久久久婷婷|