【发布时间】:2020-09-05 07:28:53
【问题描述】:
如果我们可以仅向右或向下移动,如何有效地找到从 mat[0][0] 到达 mat[r-1][c-1] 的路径乘积? 1 例如,如果矩阵是 r=3,c=3。
1 2 3 4 5 6 7 8 9一个可能的路径是 1->2->5->8->9 并且产品 = 1*2*5*8*9 = 720。
【问题讨论】:
-
最小化乘积相当于最小化对数之和。存在许多用于在图中找到最短路径(总和)的算法。在实践中,我认为您不需要计算对数。只需调整现有方法
-
你的问题不清楚。
product of paths是什么意思? -
@MBo 路径的乘积是指该路径中包含的索引上存在的整数的乘积。在上面的示例中,路径之一是 (0,0)->(0 ,1)->(1,1)->(2,1)->(2,2)。所以,乘积为 mat[0][0]*mat[0][1]*mat[1] [1]*mat[2][1]*mat[2][2] = 720.
-
@Damien 但我不需要最短路径。实际上,我想检查“可能路径的乘积”是否可以被给定整数“k”整除。并且只计算这些可能的路径。
-
@Touqeer Pathan 但是你的问题并没有说明被 k 整除和计算这样的路径。值得编辑问题,添加完整的问题陈述