2011-11-09

Euler

1
sum x = x * n * (n + 1) `div` 2 where n = 999 `div` x
solve = sum 3 + sum 5 - sum (3*5)

2

add x acc = if even x then acc + x else acc
fib a b acc = if b > 4000000 then acc else fib b b' acc'
  where b' = a + b
           acc' = add b acc
solve = fib 1 1 0

3 Пытался делать через решето Эратосфена. Тупит. Тупой брутфорс сразу дал ответ

source = 600851475143 
divide s x  
  | s == x = x
  | s `mod` x == 0 = divide (s `div` x) x
  | otherwise = divide s (x + 2) 

solve = divide source 3

Комментариев нет:

Отправить комментарий