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

            无码国内精品久久人妻| 国产精品久久久香蕉| 99久久99久久精品国产片| www亚洲欲色成人久久精品| 欧美亚洲日本久久精品| 影音先锋女人AV鲁色资源网久久| 久久天天躁狠狠躁夜夜网站 | 无码国内精品久久综合88 | 精品久久久久久久久免费影院| 一本久久a久久精品vr综合| 久久久久久久尹人综合网亚洲| 亚洲中文字幕伊人久久无码 | 天天爽天天爽天天片a久久网| 蜜桃麻豆www久久国产精品| 国产精品国色综合久久| 要久久爱在线免费观看| 国内精品久久久久久久亚洲| 久久天堂AV综合合色蜜桃网| 无码任你躁久久久久久| 青青草国产精品久久久久| 久久久久成人精品无码中文字幕| 青青久久精品国产免费看| 国产成人久久777777| 狠狠久久亚洲欧美专区 | 99精品国产免费久久久久久下载| 99国产精品久久| 久久久久久久人妻无码中文字幕爆 | 9999国产精品欧美久久久久久| 青青草原精品99久久精品66| 久久人做人爽一区二区三区| 老司机午夜网站国内精品久久久久久久久| 久久Av无码精品人妻系列| 麻豆AV一区二区三区久久| 久久精品一区二区三区AV| 国产精品一区二区久久精品涩爱| 久久免费视频6| 亚洲国产天堂久久综合| 欧美精品福利视频一区二区三区久久久精品 | 日本精品久久久久影院日本| 久久久久久无码国产精品中文字幕| 99久久亚洲综合精品成人|