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

            A Za, A Za, Fighting...

            堅信:勤能補拙

            PKU 3670 Eating Together

            問題:
            http://poj.org/problem?id=3670

            思路:
            1. 
            將原問題化解為求最長不下降子序列和最長不上升子序列即可
            求解LIS/LDS的nlogn算法
            參考http://www.shnenglu.com/Joe/archive/2010/08/14/123461.html

            2.
            參考: http://www.byvoid.com/blog/usaco-feb08-silver-eating-together/

            代碼:
             1 /* LIS/LDS: nlogn */
             2 #include<stdio.h>
             3 #include<stdlib.h>
             4 #include<string.h>
             5 #define MAX_LEN 30001
             6 int N, group[MAX_LEN];
             7 int aux[MAX_LEN];
             8 
             9 int
            10 bin_search1(int *arr, int front, int rear, int target)
            11 {
            12     int mid;
            13     while(front <= rear) {
            14         mid = (front+rear)/2;
            15         if(aux[mid] <= target)
            16             front = mid+1;
            17         else
            18             rear = mid-1;
            19     }
            20     return front;
            21 }
            22 
            23 int
            24 bin_search2(int *arr, int front, int rear, int target)
            25 {
            26     int mid;
            27     while(front <= rear) {
            28         mid = (front+rear)/2;
            29         if(aux[mid] >= target)
            30             front = mid+1;
            31         else
            32             rear = mid-1;
            33     }
            34     return front;
            35 }
            36 
            37 int
            38 LIS() /* LUDS, maybe more accurate, meaning Longest Undecreasing Seq */
            39 {
            40     int i, len = 1;
            41     aux[1= group[0];
            42     for(i=1; i<N; i++) {
            43         if(group[i] >= aux[len]) {
            44             ++len;
            45             aux[len] = group[i];
            46         } else {
            47             aux[bin_search1(aux, 1, len, group[i])] = group[i];
            48         }
            49     }
            50     return len;
            51 }
            52 
            53 int 
            54 LDS() /* LUIS */
            55 {
            56     int i, len=1;
            57     aux[1= group[0];
            58     for(i=1; i<N; i++) {
            59         if(group[i] <= aux[len]) {
            60             ++len;
            61             aux[len] = group[i];
            62         } else {
            63             aux[bin_search2(aux, 1, len, group[i])] = group[i];
            64         }
            65     }
            66     return len;
            67 }
            68 
            69 int
            70 main(int argc, char **argv)
            71 {
            72     int i, lis_len, lds_len; 
            73     while(scanf("%d"&N) != EOF) {
            74         for(i=0; i<N; i++)
            75             scanf("%d", group+i);
            76         lis_len = LIS();
            77         lds_len = LDS();
            78         printf("%d\n", N-(lis_len>lds_len ? lis_len : lds_len));
            79     }
            80 }

            posted on 2010-10-19 14:30 simplyzhao 閱讀(208) 評論(0)  編輯 收藏 引用 所屬分類: C_動態規劃

            導航

            <2010年10月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久久精品一区二区三区| 久久国产成人亚洲精品影院| 伊人色综合九久久天天蜜桃 | 亚洲国产精品久久| 久久国产精品免费一区| 久久只有这精品99| 久久精品视频网| 日本精品久久久久久久久免费| 亚洲欧美日韩久久精品第一区| 久久这里只有精品久久| 国产精品久久久久蜜芽| 国产福利电影一区二区三区久久老子无码午夜伦不 | 精品免费久久久久国产一区 | 中文国产成人精品久久亚洲精品AⅤ无码精品 | 久久久久亚洲精品日久生情 | 99久久成人18免费网站| 亚洲精品乱码久久久久久自慰| 麻豆精品久久精品色综合| 日产精品久久久久久久| 亚洲国产精品综合久久网络 | 亚洲级αV无码毛片久久精品| 国产成人综合久久精品尤物| 久久久久亚洲Av无码专| 色妞色综合久久夜夜| 欧美亚洲日本久久精品| 久久久青草青青亚洲国产免观| 久久久亚洲欧洲日产国码aⅴ| 久久99热这里只有精品66| 亚洲精品久久久www| 无码任你躁久久久久久| 日本精品久久久久久久久免费| 国产成人精品久久综合| 久久国产香蕉一区精品| 精品国产综合区久久久久久| 国产精品女同一区二区久久| 国产免费久久精品99久久| 精品久久久久久无码中文野结衣| 999久久久国产精品| 久久国产精品免费| 亚洲国产精品无码久久青草 | 狠狠色丁香久久综合婷婷|