のてすきあ − 完全独習非プログラマー −

Haskell で Project Euler を解く素人遊び

Re:Problem 11

下の20☓20の数字列からタテ・ヨコ・ナナメいずれかに4つ並んだ数字の積を取ったときの最大値を求める。 f:id:mitstream:20200405151825p:plain


2020/04/11追記:
なんとData.Listに標準でtranspose関数があることが判明。しかもそちらの方が優秀で、それを使えばナナメ成分を拾うのが格段に簡単になる。いずれ修正しようと思う。

+++++++++

…ということで修正。とても見やすくなった。take4prodの田舎臭さが気になる。都会的にするには、長さ4未満の要素をfilterで落としたりすると良いのかも知れないが、実用上はあんまり意味がなさそうなのでやめた。

お疲れさま…☆