因此,我正在编写一个程序,用于查找仅连接正元素的最小路径。例如:
-1 10 -1
10 2 10
-1 10 -1
因此在此示例中,中间元素2将连接所有正值。因此,成本为2。
我的代码如下:
import sys
def minCost(cost, m, n):
if (n < 0 or m < 0):
return sys.maxsize
elif (m == 0 and n == 0):
return cost[m][n]
else:
if(cost[m][n]>=0):
return cost[m][n] + min( minCost(cost, m-1, n-1),
minCost(cost, m-1, n),
minCost(cost, m, n-1) )
def min(x, y, z):
if (x < y):
return x if (x < z) else z
else:
return y if (y < z) else z
s =input()
b=[list(map(int, x.split("@"))) for x in s.split("#")]
print(minCost(b,len(b),len(b[0])))
我得到的答案与预期答案不同。 (注意:输入是类似于“ 1 @ 2#1 @ 3#1 @ 4”的字符串,其中@代表行,#代表列)