• <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>
            隨筆-72  評論-126  文章-0  trackbacks-0
            http://acm.hdu.edu.cn/showproblem.php?pid=1509

            #include<stdio.h>
            struct Heap{
                
            int para;
                
            int pri;
                
            int c;
                
            char name[20];
            }hh[
            901];
            void Putheap(Heap *a,int i)
            {
                Heap b;
                
            while(i>1 && a[i].pri < a[i>>1].pri)
                {
                    b 
            = a[i];
                    a[i] 
            = a[i>>1];
                    a[i
            >>1=b;
                    i 
            >>= 1;
                }
            }
            void Getheap(Heap *a,int max)
            {
                
            if(max==0)
                    
            return ;
                Heap b;
                a[
            0= a[1];
                a[
            1= a[max];
                
            int i = 1;
                
            int j = 2;
                
            while(j<max)
                {
                    
            if(j<max-1 && (a[j].pri>a[j+1].pri || a[j].pri==a[j+1].pri && a[j].c>a[j+1].c))
                        j
            ++;
                    
            if(a[i].pri>a[j].pri || a[i].pri==a[j].pri && a[i].c>a[j].c)
                    {
                        b 
            = a[i];
                        a[i] 
            = a[j];
                        a[j] 
            = b;
                        i 
            = j;
                        j 
            = i<<1;
                    }
                    
            else
                        
            break;
                }
            }
            int main()
            {
                
            int k=1,cnt=0;
                
            char com[10];
                
            while (scanf("%s",com)==1)
                {
                    cnt 
            ++;
                    
            if(com[0]=='G')
                    {
                        hh[
            0].name[0= 0;
                        Getheap(hh,k
            -1);
                        
            if(hh[0].name[0])
                        {
                            k
            --;
                            printf(
            "%s %d\n",hh[0].name,hh[0].para);
                        }
                        
            else
                            puts(
            "EMPTY QUEUE!");
                    }
                    
            else
                    {
                        hh[
            0].pri = 0x80000000;
                        scanf(
            "%s%d%d",hh[k].name,&hh[k].para,&hh[k].pri);
                        hh[k].c 
            = cnt;
                        Putheap(hh,k);
                        k 
            ++;
                    }
                }
                
            return 0;
            }


            寫了好久。。。主要是沒有考慮如果相同,先進的先出,看了別人的優先隊列的程序才知道。。
            posted on 2009-02-24 20:10 shǎ崽 閱讀(261) 評論(2)  編輯 收藏 引用

            評論:
            # re: 數組模擬的第一個堆。。 2009-02-26 17:45 | fdar
            樓主也寫個STL的模版吧.  回復  更多評論
              
            # re: 數組模擬的第一個堆。。 2009-02-27 18:07 | shǎ崽
            stl還要模板
            直接調用函數不就行了。。。那個太懶了
            堅決不寫
            做個純C寫手  回復  更多評論
              
            精品久久综合1区2区3区激情| 久久毛片一区二区| 精品免费久久久久国产一区| 久久综合五月丁香久久激情| 久久精品国产亚洲AV香蕉| 国产亚洲综合久久系列| 亚洲国产日韩欧美综合久久| 国产精品久久久久久一区二区三区 | 欧美一级久久久久久久大片| 亚洲国产美女精品久久久久∴| 人人狠狠综合久久亚洲88| 久久久久亚洲精品日久生情| 九九久久精品无码专区| 久久精品九九亚洲精品| 亚洲另类欧美综合久久图片区| 99久久人妻无码精品系列| 亚洲伊人久久大香线蕉综合图片| 久久亚洲中文字幕精品一区| 色偷偷888欧美精品久久久| 久久久久无码精品国产| 亚洲AV无码1区2区久久 | 色婷婷久久综合中文久久蜜桃av| 亚洲国产精品嫩草影院久久 | 国产欧美久久久精品影院| 狠狠久久综合伊人不卡| 中文字幕亚洲综合久久2| 久久九九久精品国产| 91久久精品视频| 99精品久久久久久久婷婷| 久久国产乱子伦精品免费强| 久久久无码一区二区三区| 欧美一区二区三区久久综| 日本人妻丰满熟妇久久久久久| 亚洲成色WWW久久网站| 久久亚洲中文字幕精品有坂深雪 | 精品久久久久久中文字幕| 国产精品一久久香蕉国产线看观看 | 日本道色综合久久影院| 色综合久久久久| 女同久久| 久久久久亚洲AV无码网站|