您的位置:程序门 -> vb -> 基础类



求一算法(可能涉及组合与排列),就这么多分了,求救啊


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


求一算法(可能涉及组合与排列),就这么多分了,求救啊[已结贴,结贴人:zzhgb]
发表于:2007-09-21 12:32:49 楼主
参数:现有一数组zhuanye(m),记录为数字如(4,6,8,3)
得出的结果是:一二维数组scoretmp(i,m):其中i是得到的组合数,有多少种组合i就是多少,m是上边zhuanye()   的数组长度

每个i行如:(0-4的某个数字,0-6的某个数字,0-8的某个数字,0-3的某个数字)  

需要所有的组合

例如:scoretmp(0,m)为(0,0,0,0)
            scoretmp(1,m)为(0,1,0,1)
.
.
.
.
            scoretmp(i,m)为(3,5,4,2)
看不明白问我qq:45264117
发表于:2007-09-21 13:03:371楼 得分:50
为了方便察看我把结果输出到文件
option   explicit

private   sub   command1_click()
    dim   zhuanye()   as   long,   scoretmp()   as   long
    dim   maxi   as   long,   m   as   long,   i   as   long,   j   as   long,   k   as   long,   t   as   long
    m   =   3
    open   "e:\1.txt "   for   output   as   #1
    redim   zhuanye(m)
    zhuanye(0)   =   4
    zhuanye(1)   =   6
    zhuanye(2)   =   8
    zhuanye(3)   =   3
    maxi   =   1
    for   i   =   0   to   ubound(zhuanye)
        maxi   =   maxi   *   zhuanye(i)
    next
    maxi   =   maxi   -   1
    redim   scoretmp(maxi,   m)
    for   i   =   0   to   maxi
        k   =   i
        for   j   =   0   to   m
            t   =   k   mod   zhuanye(j)
            k   =   k   \   zhuanye(j)
            scoretmp(i,   j)   =   t
            print   #1,   t;
        next
        print   #1,
    next
    close   #1
end   sub


快速检索

最新资讯
热门点击