aboutsummaryrefslogtreecommitdiff
path: root/challenge-149/abigail/python
diff options
context:
space:
mode:
authorMohammad S Anwar <Mohammad.Anwar@yahoo.com>2022-01-25 21:26:16 +0000
committerGitHub <noreply@github.com>2022-01-25 21:26:16 +0000
commitaa1198b22c0d5bbbfc41b638390fcbdb8cacab26 (patch)
tree1f6e662a4405cabae39336aa258120895c038f1b /challenge-149/abigail/python
parent0a207042e17d673b78681b6c0865fe0cf91f9412 (diff)
parentf6f8fa27a551ad1171389cc9ca8b5c9a0e39e025 (diff)
downloadperlweeklychallenge-club-aa1198b22c0d5bbbfc41b638390fcbdb8cacab26.tar.gz
perlweeklychallenge-club-aa1198b22c0d5bbbfc41b638390fcbdb8cacab26.tar.bz2
perlweeklychallenge-club-aa1198b22c0d5bbbfc41b638390fcbdb8cacab26.zip
Merge pull request #5567 from Abigail/abigail/week-149
Abigail/week 149
Diffstat (limited to 'challenge-149/abigail/python')
-rw-r--r--challenge-149/abigail/python/ch-1.py45
-rw-r--r--challenge-149/abigail/python/ch-2.py42
2 files changed, 87 insertions, 0 deletions
diff --git a/challenge-149/abigail/python/ch-1.py b/challenge-149/abigail/python/ch-1.py
new file mode 100644
index 0000000000..1a7f8d33ac
--- /dev/null
+++ b/challenge-149/abigail/python/ch-1.py
@@ -0,0 +1,45 @@
+#!/usr/local/bin/python3
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-149
+#
+
+#
+# Run as: python ch-1.py < input-file
+#
+
+
+def digit_sum (number):
+ sum = 0
+ base = 10
+ while number > 0:
+ sum = sum + number % base
+ number = number // base
+ return sum
+
+fib = {}
+fib_prev = 0
+fib_last = 1
+fib [fib_prev] = True;
+fib [fib_last] = True;
+
+def is_fib (n):
+ global fib, fib_prev, fib_last
+ while fib_last < n:
+ t = fib_last
+ fib_last = fib_last + fib_prev
+ fib_prev = t
+ fib [fib_last] = True;
+ return n in fib
+
+import fileinput, sys
+
+for n in fileinput . input ():
+ n = int (n)
+ k = 0
+ while n > 0:
+ if is_fib (digit_sum (k)):
+ sys . stdout . write (str (k) + " ")
+ n = n - 1
+ k = k + 1
+ print ("")
diff --git a/challenge-149/abigail/python/ch-2.py b/challenge-149/abigail/python/ch-2.py
new file mode 100644
index 0000000000..68b490cfa4
--- /dev/null
+++ b/challenge-149/abigail/python/ch-2.py
@@ -0,0 +1,42 @@
+#!/usr/local/bin/python3
+
+#
+# See https://theweeklychallenge.org/blog/perl-weekly-challenge-149
+#
+
+#
+# Run as: python ch-2.py < input-file
+#
+
+A287298 = {}
+
+A287298 [ 2] = "1"
+A287298 [ 3] = "1"
+A287298 [ 4] = "3201"
+A287298 [ 5] = "4301"
+A287298 [ 6] = "452013"
+A287298 [ 7] = "6250341"
+A287298 [ 8] = "47302651"
+A287298 [ 9] = "823146570"
+A287298 [10] = "9814072356"
+A287298 [11] = "A8701245369"
+A287298 [12] = "B8750A649321"
+A287298 [13] = "CBA504216873"
+A287298 [14] = "DC71B30685A924"
+A287298 [15] = "EDAC93B24658701"
+A287298 [16] = "FED5B39A42706C81"
+A287298 [17] = "GFED5A31C6B79802"
+A287298 [18] = "HGF80ADC53712EB649"
+A287298 [19] = "IHGFD3408C6E715A2B9"
+A287298 [20] = "JIHG03DAC457BFE96281"
+A287298 [22] = "LKJIG5D14B9032FHAC867E"
+
+
+import fileinput
+
+for n in fileinput . input ():
+ n = int (n)
+ if n in A287298:
+ print (A287298 [n])
+ else:
+ print ("Too hard to calculate")