# amicable pairs from functools import reduce import util target = 31626 r = 10000 amicable_numbers = [] for i in range(1, r + 1): s = util.sum_proper_divisors(i) if (s != i and util.sum_proper_divisors(s) == i): amicable_numbers.append(i) sum_amicables = reduce(lambda x, y: x + y, amicable_numbers) print(sum_amicables) print(sum_amicables == target)