diff --git a/0020.py b/0020.py new file mode 100644 index 0000000..4c1228d --- /dev/null +++ b/0020.py @@ -0,0 +1,12 @@ +from functools import reduce + +import util + +target = 648 + +result = util.factorial(100) + +digits_sum = reduce(lambda x, y: x + y, map(lambda x: int(x), list(str(result)))) + +print(digits_sum) +print(digits_sum == target) diff --git a/util.py b/util.py index 68acf27..6c63983 100644 --- a/util.py +++ b/util.py @@ -1,3 +1,5 @@ +from functools import reduce + def find_largest_prime_factor(n): prime_factor = 1 factors.append(prime_factor) @@ -34,3 +36,6 @@ def find_prime_factors(n): factors.append(n) return factors + +def factorial(n): + return reduce(lambda x, y: x * y, range(1, n + 1))