小编unt*_*ted的帖子

在水平,垂直和对角线上乘以数字

我目前正在研究项目欧拉问题(www.projecteuler.net),但它有点绊脚石.其中一个问题是提供20x20的数字网格,并要求直线上4个数字的最大乘积.该线可以是水平线,垂直线或对角线.

使用过程语言我没有解决这个问题,但我首先要做的就是获得更多经验并学习更多Haskell.
截至目前,我正在网格中读取并将其转换为整数列表列表,例如 - [[Int]].这使得水平乘法变得微不足道,并且通过对该网格进行转置,垂直也变得微不足道.

对角线是给我带来麻烦的.我想到了一些方法,我可以使用显式数组切片或索引,以获得一个解决方案,但它似乎过于复杂和hackey.我相信这里可能有一个优雅,实用的解决方案,我很想听听其他人能想到的.

haskell functional-programming

11
推荐指数
1
解决办法
1617
查看次数

标签 统计

functional-programming ×1

haskell ×1