从正方形网格的左上角到右下角寻找最昂贵的路径,使其总成本低于给定的阈值。
NxN网格。0。N将介于1到20之间。0 2 2 3 2。0 1 5 2 2。0 1 3 2 2,大于6。发布于 2014-12-05 00:10:03
这假设数组位于一个名为A的变量中,成本在一个名为c的变量中。
Dim M
Sub f(s,i,j,v)
If i>s And j=s And v<=c And M<v Then M=v
If i>s Or j>s Then Exit Sub
f s,i+1,j,v+A(i)(j)
f s,i,j+1,v+A(i)(j)
End Sub
f UBound(A),0,0,0
If M=0Then MsgBox-1 Else MsgBox c-M要运行它,将以下行放在名为x.vbs的文件的顶部,然后粘贴到上面的代码中,只需双击或执行cscript x.vbs
A=Array(Array(0,1,5),Array(2,3,2),Array(2,3,2))
c=6https://codegolf.stackexchange.com/questions/42168
复制相似问题