小明过生日,他要一个三层的大蛋糕,每一层都是一个小蛋糕。蛋糕店刚好有对应上、中、下三层的三类蛋糕,大家知道多层蛋糕一般都是上层最小,中层其次,下层最大,不然蛋糕就不漂亮了。所以请你帮助明明计算,在知道每一类蛋糕的体积的前提下有多少符合条件的方案。
如下图所示,其中第一层蛋糕有5种,体积分别为4、3、5、8、1;第二层有4种,体积分别为6、4、8、5;第三层有7种,体积分别为5、9、4、5、7、6、4。所选方案须符合“第一层<第二层<第三层”,如:第层选3,第二层选4第三层选6。方案共有31种。
请在划线处填入适当的代码。
Dim a(100) As Integer, b(100) As Integer, c(100) As Integer
'a、b、c数组分别存储上、中、下三层蛋糕的体积
Dim i As Integer, j As Integer, cnt As Integer, ans As Integer
Dim na As Integer, nb As Integer, nc As Integer
'na,nb、nc分别记录上、中、下三层蛋糕的种类数量
Private Sub Command1_ Click( )
Dim L As Integer, R As Integer, m As Integer
For i=1 To na-1
For j=na To i+1 Step-1
If a(j) < a(j-1) Then tmp=a(j) : a(j) =a(j-1) : a(j-1)= tmp
Next j
Next i
For i=1 To nc-1
For j=nc To i+1 Step-1
If c(j) < c(j-1) Then tmp= c(j) :c(j)=c(j- 1) :c(j- 1)= tmp
Next j
Next i
For i=1 To
L=0 : R=na+ 1
Do While L+1<R
m=(L+ R)\ 2
If a(m) < b(i) Then
L=m
Else
R= m
End If
Loop
cnt= L
L=0 : R=nc十1
Do While L+1<R
m=(L+R)\2
If Then
R= m
Else
End If
Loop
cnt=cnt * ()
ans= ans+cnt
Next i
Label1. Caption="共有"十Str(ans) + "种方案
End Sub
Private Sub Form_ Load( )
'随机生成三层蛋糕的数量存储在na、nb、nc中,生成三层蛋糕的体积存储在a、b、c数组中,并输出,代码略
End Sub