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

            f(sixleaves) = sixleaves

            重劍無鋒 大巧不工

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks
            這道題目、主要是對隊(duì)列的靈活應(yīng)用。其實(shí)就是一道模擬題目,只要你洞察出題目的本質(zhì)就十分簡單。題目意思大體是有多組測試數(shù)據(jù),每組的一開始是一個數(shù)字t,代表一共有多少的團(tuán)隊(duì),接著是t行輸入,每一行都由一個數(shù)字n開頭,表示隊(duì)伍的人數(shù)。在這之后,輸入諾干行的操作指令,E x代表入編號為x的入隊(duì)列,這里的隊(duì)列是一個新的而且只有一個的新隊(duì)列。D代表就是出隊(duì)列、同時輸出該元素、S表示停止模擬。
            題目的具體要求是,每次入隊(duì)里前,先從隊(duì)列頭掃描到隊(duì)列尾,如果隊(duì)列里有隊(duì)友,就排在隊(duì)友們的最后面(不是該隊(duì)友的后面,是整隊(duì)隊(duì)友的最后面)。如果沒有隊(duì)友則,直接排在隊(duì)列的最后面。出隊(duì)列的沒什么特別的了。

            Keys:其實(shí)我們可以通過簡單的模擬、發(fā)現(xiàn)。由第一個隊(duì)員到最后一個隊(duì)員入隊(duì)列,或者中間有其他出隊(duì)列。該隊(duì)列始終可以看成是兩個隊(duì)列的隊(duì)列。又因?yàn)轭}目要求常數(shù)的時間、
            所以我們不可能把時間浪費(fèi)在某個隊(duì)員屬于哪一個隊(duì)里,所以可以用映射、也就是map來解決這個問題。map<int, int>這個結(jié)構(gòu)剛好能映射這種關(guān)系。接下去就是要有一個q2[maxn]來表示所有初始化的隊(duì)列。一個q來表示新隊(duì)列,這個q其實(shí)就是隊(duì)列的隊(duì)列。

             1 #include <queue>
             2 #include <string>
             3 #include <map>
             4 #include <iostream>
             5 using namespace std;
             6 
             7 const int maxn = 1024;
             8 
             9 
            10 int main() {
            11     
            12     int t, n, k = 0;
            13     while (cin >> t, t) {
            14         // 列隊(duì)編號
            15         cout << "Scenario #" << ++k << endl;
            16         int qid = 1;
            17         map<intint> team;
            18         while (t--) {
            19             cin >> n;
            20             for (int i = 0; i < n; i++) {
            21                 int uid;
            22                 cin >> uid;
            23                 team[uid] = qid;
            24                 
            25             }
            26             qid++;
            27         }
            28         
            29         // uid是隊(duì)員編號、 tid是那一對隊(duì)的編號
            30         queue<int> q,q2[maxn];
            31         string op;
            32         int uid;
            33         
            34         while (cin >> op, op[0] != 'S') {
            35             
            36             // 入隊(duì)列
            37             if ('E' == op[0]) {
            38                 cin >> uid;
            39                 int tid = team[uid];
            40                 if (q2[tid].empty()) q.push(tid);
            41                 q2[tid].push(uid);
            42 
            43             }
            44             // 出隊(duì)列
            45             if ('D' == op[0]) {
            46                 
            47                 int tid = q.front();
            48                 int x = q2[tid].front();
            49                 q2[tid].pop();
            50                 cout << x << endl;
            51                 if (q2[tid].empty()) q.pop();
            52                 
            53             }
            54             
            55         }
            56         
            57         cout << endl;
            58         
            59     
            60     }
            61     
            62 }
            posted on 2015-03-24 08:31 swp 閱讀(237) 評論(0)  編輯 收藏 引用 所屬分類: algorithm
            精品国产乱码久久久久久郑州公司| 99久久综合狠狠综合久久| 亚洲精品tv久久久久久久久久| 日韩十八禁一区二区久久| 伊人久久大香线蕉综合Av| 久久久久久久99精品免费观看| 久久一本综合| 亚洲va久久久噜噜噜久久| 久久精品国产91久久麻豆自制 | 亚洲国产精品久久久久网站 | 亚洲AⅤ优女AV综合久久久| 人妻精品久久无码区| 久久人人超碰精品CAOPOREN| 久久无码人妻一区二区三区| 日本精品久久久久久久久免费| 久久综合狠狠综合久久| 亚洲国产成人久久综合碰| 久久九九青青国产精品| 久久99热这里只有精品国产| 91精品国产高清久久久久久国产嫩草 | 久久91精品国产91久久户| 99久久这里只精品国产免费| 99久久综合狠狠综合久久| 亚洲人成伊人成综合网久久久| 久久久精品国产Sm最大网站| 国产成人精品久久一区二区三区| 精品久久久久久久久免费影院| 94久久国产乱子伦精品免费| 国产精品久久久久久吹潮| 亚洲欧美日韩中文久久| 亚洲国产一成久久精品国产成人综合| 亚洲嫩草影院久久精品| 精品久久久噜噜噜久久久 | 久久这里只有精品首页| 国产∨亚洲V天堂无码久久久| 精品无码久久久久国产| 久久精品亚洲中文字幕无码麻豆 | 99精品国产在热久久无毒不卡| 国内精品久久久久久久久电影网 | 久久笫一福利免费导航| 亚洲一区精品伊人久久伊人|