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

            pku 1771 Elevator Stopping Plan 二分+貪心判斷可行性

            題意是這樣的:
            一幢大樓有21層,只有一個電梯,電梯上一層樓需要4秒。停一次需要10秒,人爬一層樓需要20秒,現有一些人想通過電梯上樓,電梯選擇性的停一些樓層,使得最后一個人到達目的樓層的時間最小。
            像這種最大最小問題一般思路就是二分+驗證可行性。這道題驗證可行性可采用貪心方法,即電梯停靠的越上層越好,每次停靠的樓層用不等式t-10*num-4*(i-1)-20*(j-i)=0.解出。具體看代碼吧- -
            這題做的時候有點NC,竟然忘了排序。。汗。。
             1# include <iostream>
             2# include <vector>
             3# include <algorithm>
             4# define abs(a) ((a)>0?(a):-(a))
             5using namespace std;
             6int data[50],n;
             7void make(int limit)
             8{
             9    int used=0,p=0,last=1;
            10    vector<int> ans;
            11    while(p<n&&10*used+(last-1)*4+abs(data[p]-last)*20<=limit)
            12          p++
            13    while(p<n)
            14    {
            15
            16       int up=(limit+20*data[p]+4-10*used)/24;
            17       last=up;
            18       ans.push_back(last);
            19       p++;
            20       while(p<n&&10*used+(last-1)*4+abs(data[p]-last)*20<=limit)
            21          p++
            22       used++;
            23    }

            24    cout<<ans.size();
            25    for(int i=0;i<ans.size();i++)
            26      cout<<" "<<ans[i];
            27    cout<<endl;
            28}

            29bool chk(int limit)
            30{
            31    int used=0,p=0,last=1;
            32    while(p<n&&10*used+(last-1)*4+abs(data[p]-last)*20<=limit)
            33          p++;
            34    while(p<n)
            35    {
            36
            37       if(10*used+(data[p]-1)*4>limit) return false
            38       int up=(limit+20*data[p]+4-10*used)/24;
            39       //if(up>31) up=31;    
            40       last=up;
            41       p++;
            42       while(p<n&&10*used+(last-1)*4+abs(data[p]-last)*20<=limit)
            43          p++;
            44       used++;
            45        
            46    }

            47    return true;
            48}

            49int main()
            50{
            51    while(true)
            52    {
            53        int s=0,e=-1;
            54        cin>>n;
            55        if(!n) break;
            56        for(int i=0;i<n;i++)
            57        {
            58             cin>>data[i];
            59             e=((data[i]-1)*20>e?(data[i]-1)*20:e);
            60        }

            61        sort(data,data+n);
            62      //  int *p=unique(data,data+n);
            63       // n=p-data;
            64        while(s<=e)
            65        {
            66           int mid=(s+e)>>1;
            67           if(chk(mid))
            68              e=mid-1;
            69           else
            70              s=mid+1;
            71        }

            72        cout<<s<<endl;
            73        make(s);
            74    }

            75    return 0;
            76}

            77
            78

            posted on 2010-10-19 14:24 yzhw 閱讀(227) 評論(0)  編輯 收藏 引用 所屬分類: searchothers

            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            公告

            統計系統

            留言簿(1)

            隨筆分類(227)

            文章分類(2)

            OJ

            最新隨筆

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久亚洲精品成人AV| 久久夜色精品国产噜噜亚洲AV| 久久天天躁狠狠躁夜夜avapp| 一本一本久久a久久精品综合麻豆| 91亚洲国产成人久久精品| 久久精品一区二区国产| 嫩草影院久久国产精品| 久久亚洲国产精品五月天婷| AA级片免费看视频久久| 怡红院日本一道日本久久 | 69久久精品无码一区二区| 99久久精品国内| 久久久国产视频| 狠狠综合久久综合中文88| 久久亚洲精品成人无码网站| 一本久久综合亚洲鲁鲁五月天| 久久99国产精品久久99小说| 国产精品久久久久久久app| 国产精品美女久久久久| 亚洲国产成人久久综合碰| 97久久精品人妻人人搡人人玩| 久久久噜噜噜久久中文字幕色伊伊| 一本色道久久综合亚洲精品| 丰满少妇高潮惨叫久久久| 久久精品二区| 97超级碰碰碰碰久久久久| 亚洲色欲久久久综合网东京热| 精品无码久久久久久久久久| 综合久久给合久久狠狠狠97色 | 99久久伊人精品综合观看| 久久夜色精品国产欧美乱| 久久婷婷色香五月综合激情| 国产精品9999久久久久| 伊人色综合久久天天人手人婷| 久久精品国产色蜜蜜麻豆| 国内精品久久久久久野外| 97久久精品人妻人人搡人人玩| 亚洲午夜久久久久久久久电影网 | 亚洲AⅤ优女AV综合久久久| 久久亚洲高清观看| 精品综合久久久久久88小说 |