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

            堅(jiān)信:勤能補(bǔ)拙

            PKU 3670 Eating Together

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

            思路:
            1. 
            將原問題化解為求最長(zhǎng)不下降子序列和最長(zhǎng)不上升子序列即可
            求解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 閱讀(209) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C_動(dòng)態(tài)規(guī)劃

            導(dǎo)航

            <2011年7月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            色婷婷狠狠久久综合五月| 久久婷婷国产麻豆91天堂| 91久久香蕉国产熟女线看| 精品久久久久中文字幕日本| 一级做a爰片久久毛片免费陪 | 国产精品久久久久久久久免费 | 久久精品国产亚洲AV高清热| 一本一本久久A久久综合精品| 亚洲AV乱码久久精品蜜桃| 久久亚洲中文字幕精品有坂深雪| 久久久无码精品亚洲日韩按摩| 伊人久久大香线蕉综合Av | 久久精品中文闷骚内射| 波多野结衣中文字幕久久| 久久午夜电影网| 久久无码人妻精品一区二区三区| 久久成人18免费网站| 久久久久久一区国产精品| 久久国产精品无| 国产一区二区精品久久岳| 亚洲伊人久久大香线蕉苏妲己| 精品欧美一区二区三区久久久| 精品久久人人妻人人做精品 | 久久电影网一区| 久久久久久久国产免费看| 久久精品青青草原伊人| 激情伊人五月天久久综合| 久久天天躁狠狠躁夜夜2020老熟妇| 久久精品免费全国观看国产| 97久久精品无码一区二区| 久久人人超碰精品CAOPOREN| 亚洲va久久久噜噜噜久久狠狠 | 亚洲熟妇无码另类久久久| 99久久久久| 久久亚洲私人国产精品| 久久久99精品成人片中文字幕 | 色综合久久夜色精品国产| 狠狠干狠狠久久| 无码国产69精品久久久久网站| 久久亚洲中文字幕精品一区四 | 亚洲精品无码专区久久久|