• <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 3400 Dropping the stones

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

            思路:
            這題就是個悲劇...
            應該算是簡單的深搜題,結果花了我一個上午
            畫了好幾顆遞歸調用樹也不知道為什么會出錯...抓狂...
            最后發現,一直出錯的原因是在寫代碼的時候將遞歸函數的參數直接修改,導致后續的“同一層”的回溯調用出錯,啊啊啊...

            代碼:
             1 #include<stdio.h>
             2 #include<stdlib.h>
             3 #include<string.h>
             4 #define MAX_LEN 11
             5 struct Stone {
             6     int weight;
             7     int cost;
             8 }stones[MAX_LEN];
             9 int N, D;
            10 int total_cost, max_cost, hash[MAX_LEN];
            11 
            12 void
            13 dfs(char bunker, int weight_a, int cost_a, int weight_b, int cost_b)
            14 {
            15     int i, w, c, mark = 0;
            16     if(total_cost-cost_a<=max_cost)
            17         return;
            18     for(i=0; i<N; i++) {
            19         if(!hash[i]) {
            20             mark = 1;
            21             hash[i] = 1;
            22             switch(bunker) {
            23                 case 'A':
            24                     w = weight_a+stones[i].weight;
            25                     c = cost_a+stones[i].cost;
            26                     if(w-weight_b <= D)
            27                         dfs('A', w, c, weight_b, cost_b);
            28                     else
            29                         dfs('B', w, c, weight_b, cost_b);
            30                     break;
            31                 case 'B':
            32                     w = weight_b+stones[i].weight;
            33                     c = cost_b+stones[i].cost;
            34                     if(w-weight_a <= D)
            35                         dfs('B', weight_a, cost_a, w, c);
            36                     else
            37                         dfs('A', weight_a, cost_a, w, c);
            38                     break;
            39             }
            40             hash[i] = 0;
            41         }
            42     }
            43     if(!mark) 
            44         max_cost = max_cost<cost_b ? cost_b : max_cost;
            45 }
            46 
            47 int
            48 main(int argc, char **argv)
            49 {
            50     int i;
            51     while(scanf("%d %d"&N, &D) != EOF) {
            52         total_cost = 0;
            53         for(i=0; i<N; i++) {
            54             scanf("%d %d"&stones[i].weight, &stones[i].cost);
            55             total_cost += stones[i].cost;
            56         }
            57         max_cost = 0;
            58         memset(hash, 0sizeof(hash));
            59         dfs('A'0000);
            60         printf("%d\n", max_cost);
            61     }
            62 }

            posted on 2010-10-28 11:46 simplyzhao 閱讀(243) 評論(0)  編輯 收藏 引用 所屬分類: B_搜索

            導航

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

            統計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            精品久久久久久国产牛牛app| 久久综合九色综合久99| 91久久国产视频| 国产成人综合久久久久久| 欧美日韩中文字幕久久伊人| 久久精品水蜜桃av综合天堂 | 久久亚洲AV无码精品色午夜麻豆| 国产毛片欧美毛片久久久| 亚洲中文字幕久久精品无码APP| 国产亚洲欧美精品久久久| 97久久香蕉国产线看观看| 久久精品人妻一区二区三区| 久久久午夜精品福利内容| 久久综合给合久久狠狠狠97色| 成人精品一区二区久久| 久久精品国产亚洲麻豆| 久久亚洲私人国产精品| 97精品伊人久久大香线蕉app| 久久天堂AV综合合色蜜桃网| 久久久久久狠狠丁香| 要久久爱在线免费观看| 亚洲乱亚洲乱淫久久| 亚洲国产精品18久久久久久| 久久国产精品免费一区| 99久久国产热无码精品免费| 亚洲精品美女久久久久99小说| 久久国产精品-久久精品| 亚洲精品国精品久久99热| 久久99国产精品久久| 人人狠狠综合久久88成人| 一本久久综合亚洲鲁鲁五月天| 国内精品久久久久久久coent| 久久超碰97人人做人人爱| 超级碰碰碰碰97久久久久| 欧美伊人久久大香线蕉综合69| 久久精品国产69国产精品亚洲| 亚洲精品乱码久久久久久蜜桃不卡 | 久久精品国产黑森林| 久久99精品久久久久久| 亚洲色婷婷综合久久| 亚洲国产精品无码成人片久久|