equal
deleted
inserted
replaced
1 import math |
1 import math |
2 |
2 |
3 def aliquot(n): |
3 def aliquot(n): |
4 sum = 0 |
4 sum = 1 |
5 for i in range(1, math.sqrt(n)+1): |
5 i = 2 |
|
6 |
|
7 while i * i < n: |
6 if n % i == 0: |
8 if n % i == 0: |
7 sum += i + n/i |
9 sum += i + (n / i) |
|
10 i += 1 |
|
11 if i*i == n: sum += i |
8 return sum |
12 return sum |
9 |
13 |
10 amicable = [] |
14 amicable = [] |
11 for n in range(10000, 100000): |
15 for n in range(1000, 10000): |
12 m = aliquot(n) |
16 m = aliquot(n) |
13 if aliquot(m) == n: |
17 if m > n and aliquot(m) == n: |
14 amicable.append((m, n)) |
18 amicable.append((m, n)) |
15 |
19 |
16 print amicable |
20 print amicable |
17 |
21 |
18 # please please please profile this. |
22 # please please please profile this. |