二维矩阵由左上角到右下角只能向右或向下走所有可能路径取值之和最大值,来自网友发的腾讯的一道题目。
matrix = [
[0, 0, 8, 0, 0],
[0, 0, 0, 9, 0],
[0, 7, 0, 0, 0],
[0, 0, 6, 0, 0]
]
我用Haskell实现了一下:
分三步实现,第一步倒推所有可能路径,第二步,反向倒推的路径,得到正向路径,如果只是求和,这一步可以省略。
第三步,对应坐标到具体的路径中,然后求和,获取最大值。没有用到matrix包,只用二维列表来实现。
不过我不确定计算的路径是否