• <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 閱讀(222) 評論(0)  編輯 收藏 引用 所屬分類: searchothers

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

            導航

            統計

            公告

            統計系統

            留言簿(1)

            隨筆分類(227)

            文章分類(2)

            OJ

            最新隨筆

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久最新精品国产| 中文字幕无码久久人妻| 少妇久久久久久被弄高潮| 亚洲精品无码久久千人斩| 久久国产精品成人片免费| 成人久久精品一区二区三区| 国产91色综合久久免费分享| 国产成人无码精品久久久久免费| 日本欧美国产精品第一页久久| 一本色道久久综合亚洲精品| 国产V综合V亚洲欧美久久| 精品综合久久久久久88小说| 2021国内久久精品| 久久er国产精品免费观看2| 无码人妻少妇久久中文字幕 | 亚洲综合熟女久久久30p| 1000部精品久久久久久久久| 久久亚洲精品无码播放| 无码AV波多野结衣久久| 久久99久久成人免费播放| 亚洲乱码精品久久久久..| 久久综合日本熟妇| 久久久久久免费一区二区三区 | 狠狠色婷婷综合天天久久丁香| 人人狠狠综合久久亚洲| 国产精品久久久天天影视| 日韩人妻无码一区二区三区久久99| 久久er国产精品免费观看2| 午夜精品久久久久久久| 久久夜色精品国产www| 久久久综合九色合综国产| 浪潮AV色综合久久天堂| 亚洲色大成网站www久久九| 久久国产亚洲精品| 国内精品久久久久久久coent| 99re这里只有精品热久久| 亚洲AV无码久久精品狠狠爱浪潮| 中文字幕亚洲综合久久菠萝蜜| 伊人久久一区二区三区无码| 午夜精品久久久久久影视riav| 狠狠色综合久久久久尤物|