如题 以双色球为例    红球 1到33共33个号 篮球1到16共16个号  用什么方法能够快速的组合 红球六个数加篮球一个数是一组, ,有几百万个组合呢。怎么能够快速的把所有有可能的组合给显示出来呢
红球 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33
篮球  1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16红球1,2,3,4,5,6+篮球2   这样算一组

解决方案 »

  1.   

    多个For进行嵌套不就行了……
    然后用If判断位数之间是否有重复……如果重复就Break。
      

  2.   

    除非你的CPU很牛X,现在也有GPU编程,也可以用GPU进行运算。
    我在我的电脑上进行质数运算到百万需要15分钟或者更长……
    我正在VS写这个代码,等会发来……
      

  3.   

                int i1, i2, i3, i4, i5, i6, j;
                for (i1 = 1; i1 <= 26; i1++)
                {
                    for (i2 = 1; i2 <= 26; i2++)
                    {
                        if (i2 == i1)
                        {
                            break;
                        }
                        for (i3 = 1; i3 <= 26; i3++)
                        {
                            if (i3 == i1 || i3 == i2)
                            {
                                break;
                            }
                            for (i4 = 1; i4 <= 26; i4++)
                            {
                                if (i4 == i1 || i4 == i2 || i4 == i3)
                                {
                                    break;
                                }
                                for (i5 = 1; i5 <= 26; i5++)
                                {
                                    if (i5 == i1 || i5 == i2 || i5 == i3 || i5 == i4)
                                    {
                                        break;
                                    }
                                    for (i6 = 1; i6 <= 26; i6++)
                                    {
                                        if (i6 == i1 || i6 == i2 || i6 == i3 || i6 == i4 || i6 == i5)
                                        {
                                            break;
                                        }
                                        for (j = 1; j <= 16; j++)
                                        {
                                            //这里写输出代码,输出i1至i6和j。
                                        }
                                    }
                                }
                            }
                        }
                    }
                }