diff options
author | Santo Cariotti <santo@dcariotti.me> | 2024-05-28 10:29:13 +0200 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2024-05-28 10:29:13 +0200 |
commit | f05d888a0b621ca4e99e2b0fb6e23c097006fe41 (patch) | |
tree | eebbb2489144112d3288393e354d19375a0aa088 /progs/a486.py |
Init
Diffstat (limited to 'progs/a486.py')
-rw-r--r-- | progs/a486.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/progs/a486.py b/progs/a486.py new file mode 100644 index 0000000..e0ef697 --- /dev/null +++ b/progs/a486.py @@ -0,0 +1,15 @@ +def amicable_numbers_sum(limit):
+ if not isinstance(limit, int):
+ return "Input is not an integer!"
+ if limit < 1:
+ return "Input must be bigger than 0!"
+ amicables = set()
+ for num in range(2, limit+1):
+ if num in amicables:
+ continue
+ sum_fact = sum([fact for fact in range(1, num) if num % fact == 0])
+ sum_fact2 = sum([fact for fact in range(1, sum_fact) if sum_fact % fact == 0])
+ if num == sum_fact2 and num != sum_fact:
+ amicables.add(num)
+ amicables.add(sum_fact2)
+ return sum(amicables)
\ No newline at end of file |