我想还是遍历 因为计算量小的很,完全行的通 算法简述如下:用户总购买量sumt=-1 for i=0 to sum\400 for j=0 to (sum-i*400)\300 for k=0 to (sum-i*400-j*300)\200 total=i*120+j*70+k*50 if total>t then t=total i0=i j0=j:k0=k end if next k,j,i debug.print "总额:",t debug.print "方法:",i0,j0,k0 这样按total最大的那个i,j,k分配也就是400 i0份.....就行了
因为计算量小的很,完全行的通
算法简述如下:用户总购买量sumt=-1
for i=0 to sum\400
for j=0 to (sum-i*400)\300
for k=0 to (sum-i*400-j*300)\200
total=i*120+j*70+k*50
if total>t then
t=total
i0=i
j0=j:k0=k
end if
next k,j,i
debug.print "总额:",t
debug.print "方法:",i0,j0,k0
这样按total最大的那个i,j,k分配也就是400 i0份.....就行了