summaryrefslogtreecommitdiff
path: root/day1/exercise/aliquot.py
diff options
context:
space:
mode:
Diffstat (limited to 'day1/exercise/aliquot.py')
-rw-r--r--day1/exercise/aliquot.py19
1 files changed, 15 insertions, 4 deletions
diff --git a/day1/exercise/aliquot.py b/day1/exercise/aliquot.py
index f07cd77..96ea916 100644
--- a/day1/exercise/aliquot.py
+++ b/day1/exercise/aliquot.py
@@ -1,8 +1,19 @@
+def is_perfect_square(n):
+ i = 1
+ while i * i < n:
+ i += 1
+ return i * i == n, i
+
def aliquot(n):
- sum = 0
- for i in range(1, (n/2)+1):
+ sum = 1
+ i = 2
+
+ is_ps, root = is_perfect_square(n)
+ while i < root:
if n % i == 0:
- sum += i
+ sum += i + (n / i)
+ i += 1
return sum
-print aliquot(14)
+n = int(raw_input('Enter a number? '))
+print aliquot(n)