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

            糯米

            TI DaVinci, gstreamer, ffmpeg
            隨筆 - 167, 文章 - 0, 評論 - 47, 引用 - 0
            數據加載中……

            POJ 2431 Expedition 貪心+堆

            思路:

            有油的時候能走多遠就走多遠,看能否走到目的地。
            如果走不到,就必須要加一次油,途中會遇到很多加油站,一定要選油最多的那個。
            這很容易理解,因為如果你只加這一次,越多當然越好。如果要以后還要加,那能走遠一點選擇也多一點。

            重復這樣的過程就可以求解了。可以用堆維護加油站中的油量。

            杯具:稍稍修改了一下堆的寫法,結果WA兩次。。

            代碼:
            #include <stdio.h>
            #include 
            <stdlib.h>

            #define MAX_N 10032

            struct node {
                
            int x, f;
            }
            ;

            struct node stop[MAX_N];
            int N, L, P;
            int heap[MAX_N], heap_size;

            inline 
            void shift_up(int idx)
            {
                
            int val = heap[idx];
                
            while (idx > 1 && heap[idx/2< val) {
                    heap[idx] 
            = heap[idx/2];
                    idx 
            /= 2;
                }

                heap[idx] 
            = val;
            }


            inline 
            void shift_down(int idx)
            {
                
            int val = heap[idx];
                
            while (1{
                    idx 
            *= 2;
                    
            if (idx > heap_size)
                        
            break;
                    
            if (idx + 1 <= heap_size && heap[idx + 1> heap[idx])
                        idx
            ++;
                    
            if (val >= heap[idx])
                        
            break;
                    heap[idx
            /2= heap[idx];
                }

                heap[idx
            /2= val;
            }


            int cmp(const void *a, const void *b)
            {
                
            return ((struct node *)b)->- ((struct node *)a)->x;
            }


            inline 
            void push(int val)
            {
                heap[
            ++heap_size] = val;
                shift_up(heap_size);
            }


            inline 
            void pop()
            {
                heap[
            1= heap[heap_size--];
                shift_down(
            1);
            }


            int main()
            {
                
            int i, x, t;

                freopen(
            "e:\\test\\in.txt""r", stdin);

                scanf(
            "%d"&N);
                
            for (i = 0; i < N; i++)
                    scanf(
            "%d%d"&stop[i].x, &stop[i].f);
                scanf(
            "%d%d"&L, &P);
                qsort(stop, N, 
            sizeof(stop[0]), cmp);

                push(P);
                x 
            = L;
                i 
            = 0;
                
            for (t = 0; heap_size && x > 0; t++{
                    x 
            -= heap[1];
                    pop();
                    
            while (i < N && x <= stop[i].x)
                        push(stop[i
            ++].f);
                }

                printf(
            "%d\n", x <= 0 ? t - 1 : -1);

                
            return 0;
            }



            posted on 2010-04-13 13:53 糯米 閱讀(603) 評論(0)  編輯 收藏 引用 所屬分類: POJ

            无夜精品久久久久久| 日产精品久久久一区二区| 国产69精品久久久久99尤物| 91久久成人免费| 亚洲精品高清国产一线久久 | 久久精品国产亚洲AV无码偷窥| 久久99国产综合精品免费| 久久亚洲国产精品五月天婷| 久久偷看各类wc女厕嘘嘘| 色综合久久中文字幕综合网| 999久久久免费精品国产| 亚洲欧洲精品成人久久曰影片| 99久久99久久久精品齐齐 | 无码AV中文字幕久久专区| 国产激情久久久久影院小草| 久久综合狠狠综合久久综合88| 久久综合色区| 久久久久久A亚洲欧洲AV冫| 久久99国产精品久久99| 久久久久无码精品国产不卡| 久久人人爽人人人人爽AV| 精品无码久久久久久久久久| 久久久青草久久久青草| 热re99久久精品国99热| 无码国内精品久久人妻蜜桃| 精品久久久久久久久免费影院| 久久免费大片| 婷婷久久综合九色综合九七| 久久精品无码专区免费| 久久久久久亚洲精品不卡 | 国产呻吟久久久久久久92| 久久99精品久久久久婷婷| 久久亚洲私人国产精品| 久久久婷婷五月亚洲97号色 | 国产美女久久精品香蕉69| 久久久久人妻精品一区二区三区| 亚洲av成人无码久久精品| 亚洲精品乱码久久久久66| 国产精品无码久久综合| 91精品国产色综久久| 日韩亚洲国产综合久久久|