40問目
http://projecteuler.net/index.php?section=problems&id=40
0.123456789101112131415161718192021...
のように自然数をつなげて作った小数のn番目の数字をdnとするとき、以下の値を求める。
d1 × d10 × d100 × d1000 × d10000 × d100000 × d1000000
これは楽チン。
import Data.Char main = print euler040 euler040 :: Int euler040 = product $ map (digitToInt . (d !!)) [1,10,100,1000,10000,100000,1000000] d :: String d = concat $ map show [0..1000000]