
--
-- 過剰数か ?
--
isAbundant :: Integral a => a -> Bool
isAbundant n = n + n < sumOfDivisors n

--
-- 不足
numberOfDivisors :: Integral a => a -> Int
numberOfDivisors n = product [i + 1 | (_, i) <- factorize n]
numberOfDivisors n = product [i + 1 | (_, i) <- factorize n]