Problem 45
コンテンツ
Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:
Triangle Tn=n(n+1)/2 1, 3, 6, 10, 15, …
Pentagonal Pn=n(3n1)/2 1, 5, 12, 22, 35, …
Hexagonal Hn=n(2n1) 1, 6, 15, 28, 45, …
It can be verified that T285 = P165 = H143 = 40755.
Find the next triangle number that is also pentagonal and hexagonal.
import Data.List tri = [n*(n+1)`div`2|n<-[286..]] penta =[n*(3*n-1)`div`2|n<-[166..]] hexa =[n*(2*n-1)|n<-[144..]] p045 = head[m|m<-hexa,isIn penta m,isIn penta m] isIn (x:xs) y | x == y = True | x < y =isIn xs y | x > y = False main =print p045
作成者 Toru Mano
最終更新時刻 2023-01-01 (c70d5a1)