题型:综合题 题类:常考题 难易度:困难
浙江省十校联盟2020届高三上学期信息技术10月联考试卷
解决此问题可采用自底至顶分析的方法。如图a所示的数塔中,先从第3层开始分析:如果路径经过第3层的第1个数字12,那么从12到尾结点的路径上数字之和的最大值是当前结点值加上该结点左下方、右下方结点中的较大值,记作f(3,1)=12+141同理,f(3,2)=7+15、f(3,3)=26+15:再分析第2层,计算f(2,1)、f(2,2):最后计算出第1层f(1,1),即为所求结果。
Const n= 5
Dim a(1 To n^2) As Integer ‘数组a存储数塔数据,存储结构如图c所示
Dim f(1 To n^2) As Integer ‘数组f存储从第i层第j个数到底层尾结点的最大数字之和,其存储结构与数组a一样
Private Sub Command2Click()
‘生成数塔,将数据存入a数组中,代码略
End Sub
Private Sub Command2Click()
Dim i As Integer, j As Integer, k As Integer
For j=1 To n
f((n-1)*n+j)=
Next j
For i=
For j=1 To i
k=(1-1)*n+j
f(k)=
Next j
Next i
Label1.Caption=“路径上的数字和最大值为:"+Str(f(1)
End Sub
Function max(a As Integer, b As Integer) As Integer
If a>b Then max=a Else max=b
End Function
试题篮