• <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>
            posts - 183,  comments - 10,  trackbacks - 0

            不同組的組合

            有 N 個組,每個組中有不定個元素,從每個組中選擇一個元素,例如:
            第一組 1 2
            第二組 3 4
            第三組 5
            結果為:
            1 3 5
            1 4 5
            2 3 5
            2 4 5

            http://topic.csdn.net/u/20100313/23/51e49d61-8a36-47f5-8e3b-20477dafde55.html

             1 #include <iostream>
             2 #include <string>
             3 #include <vector>
             4 using namespace std;
             5 
             6 void foo(vector<vector<string> >& result, vector<string>& temp, const vector<vector<string> >& vvs, size_t m)
             7 {
             8     if (temp.size() >= vvs.size())
             9     {
            10         result.push_back(temp);
            11         for (size_t i = 0; i != temp.size(); ++i)
            12         {
            13             cout << temp[i] << ' ';
            14         }
            15         cout << endl;
            16     }
            17     else
            18     {
            19         for (size_t i = 0; i != vvs[m].size(); ++i)
            20         {
            21             temp.push_back(vvs[m][i]);
            22             foo(result, temp, vvs, m + 1);
            23             temp.pop_back();
            24         }
            25     }
            26 }
            27 
            28 void bar(vector<vector<string> >& result, const vector<vector<string> >& vvs)
            29 {
            30     vector<string> temp;
            31     foo(result, temp, vvs, 0);
            32 }
            33 
            34 int main()
            35 {
            36     vector<vector<string> > vvs;
            37     vector<string> vs;
            38     vs.push_back("A1");
            39     vs.push_back("A2");
            40     vvs.push_back(vs);
            41     vs.clear();
            42     vs.push_back("B1");
            43     vs.push_back("B2");
            44     vvs.push_back(vs);
            45     vs.clear();
            46     vs.push_back("C1");
            47     vs.push_back("C2");
            48     vs.push_back("C3");
            49     vvs.push_back(vs);
            50     vs.clear();
            51     for (size_t i = 0; i != vvs.size(); ++i)
            52     {
            53         for (size_t j = 0; j != vvs[i].size(); ++j)
            54         {
            55             cout << vvs[i][j] << ' ';
            56         }
            57         cout << endl;
            58     }
            59     cout << endl;
            60     vector<vector<string> > result;
            61     bar(result, vvs);
            62     cout << endl;
            63     for (size_t i = 0; i != result.size(); ++i)
            64     {
            65         for (size_t j = 0; j != result[i].size(); ++j)
            66         {
            67             cout << result[i][j] << ' ';
            68         }
            69         cout << endl;
            70     }
            71     return 0;
            72 }


            posted on 2011-10-06 13:23 unixfy 閱讀(179) 評論(0)  編輯 收藏 引用
            77777亚洲午夜久久多喷| 日韩AV无码久久一区二区| 精品久久人人做人人爽综合| 精品久久人人妻人人做精品| 国产精品99久久久精品无码| 精品永久久福利一区二区| 国产午夜精品久久久久九九电影| 欧美激情精品久久久久久| 亚洲国产另类久久久精品| 精品国产91久久久久久久a| 亚洲精品乱码久久久久久按摩| 曰曰摸天天摸人人看久久久| 亚洲国产另类久久久精品| 亚洲精品97久久中文字幕无码| 国产精品一区二区久久精品| 国内精品伊人久久久久777| 91精品婷婷国产综合久久| 国产精品99久久99久久久| 久久婷婷五月综合色奶水99啪| 国产综合精品久久亚洲| 久久久精品免费国产四虎| 亚洲国产精品无码久久| 久久综合偷偷噜噜噜色| 久久精品国产99久久香蕉| 久久久无码精品亚洲日韩蜜臀浪潮| 无码人妻久久一区二区三区蜜桃 | 欧美亚洲另类久久综合| 亚洲人成伊人成综合网久久久| 精品人妻伦一二三区久久| 狠色狠色狠狠色综合久久| 久久精品亚洲日本波多野结衣 | 99久久精品国产麻豆| 久久精品国产色蜜蜜麻豆| 中文精品99久久国产| 久久综合视频网站| 四虎国产精品免费久久| 亚洲另类欧美综合久久图片区| 亚洲美日韩Av中文字幕无码久久久妻妇| 青青草国产精品久久| 国产精品亚洲美女久久久| 久久99精品国产麻豆不卡|