• <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
            結(jié)果為:
            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 閱讀(171) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            亚洲日本久久久午夜精品| 精品蜜臀久久久久99网站| 99久久成人国产精品免费| 丰满少妇人妻久久久久久| 中文字幕成人精品久久不卡 | 国产精品久久99| 99久久99久久精品国产片果冻| 国产精品99久久久久久董美香| 久久久久亚洲?V成人无码| 久久久久久久人妻无码中文字幕爆 | 亚洲午夜精品久久久久久app| 97精品依人久久久大香线蕉97| 99久久婷婷免费国产综合精品| 久久99精品久久久久久秒播| 亚洲午夜无码久久久久| 精品久久久久久久中文字幕| 久久综合亚洲欧美成人| 香蕉久久AⅤ一区二区三区| 国产亚洲婷婷香蕉久久精品| 国产精品久久久久蜜芽| 日本三级久久网| 久久精品毛片免费观看| 综合久久一区二区三区 | 久久国产精品无码网站| 久久精品国产清高在天天线| 国产美女亚洲精品久久久综合| 久久精品国产福利国产琪琪| 国产一区二区三区久久| 中文字幕乱码人妻无码久久| 热综合一本伊人久久精品| segui久久国产精品| 国产精品一区二区久久不卡| 久久婷婷五月综合97色一本一本| 久久综合色老色| 中文字幕无码久久久| 欧美精品一区二区久久| 精品久久久久久无码人妻蜜桃| 国产精品99久久久久久人| 久久午夜电影网| 久久久久久久久久免免费精品| 欧美色综合久久久久久|