• <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 閱讀(1243) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告

            亚洲va久久久噜噜噜久久男同| 99精品久久精品一区二区| 99久久精品免费看国产一区二区三区| 欧美黑人激情性久久| 欧美丰满熟妇BBB久久久| AA级片免费看视频久久| 亚洲国产精品久久久久婷婷软件| 日产久久强奸免费的看| 亚洲国产精品一区二区久久hs | 日产精品99久久久久久| 久久综合综合久久97色| 一本色道久久综合| 国产一区二区精品久久岳| 亚洲va国产va天堂va久久| 国产成人精品久久亚洲| 久久久久久亚洲AV无码专区| 久久亚洲中文字幕精品一区四| 久久久久亚洲精品无码蜜桃| 亚洲欧美国产精品专区久久 | 欧美噜噜久久久XXX| 无码乱码观看精品久久| 久久综合久久综合久久| 久久精品人人做人人妻人人玩| 久久精品亚洲福利| 91精品国产综合久久香蕉 | 久久天天躁狠狠躁夜夜不卡| 999久久久无码国产精品| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲精品NV久久久久久久久久 | 久久精品国产只有精品66| 奇米综合四色77777久久| 久久久久久曰本AV免费免费| 少妇久久久久久被弄到高潮| 久久人搡人人玩人妻精品首页| 久久精品国产91久久综合麻豆自制| 久久夜色精品国产网站| 久久99精品久久久久久动态图| 久久男人Av资源网站无码软件 | 久久国产精品-国产精品| 亚洲国产成人久久精品动漫| 97超级碰碰碰久久久久|