diff options
Diffstat (limited to 'challenge-116/abigail/python')
| -rw-r--r-- | challenge-116/abigail/python/ch-1.py | 33 | ||||
| -rw-r--r-- | challenge-116/abigail/python/ch-2.py | 23 |
2 files changed, 56 insertions, 0 deletions
diff --git a/challenge-116/abigail/python/ch-1.py b/challenge-116/abigail/python/ch-1.py new file mode 100644 index 0000000000..b988189564 --- /dev/null +++ b/challenge-116/abigail/python/ch-1.py @@ -0,0 +1,33 @@ +#!/opt/local/bin/python + +# +# See ../README.md +# + +# +# Run as: python ch-1.py < input-file +# + +import fileinput + +def make_sequence (string, start): + if string == start: + return [start] + + if 0 == string . find (start): + tail = string [len (start) :] + result = make_sequence (tail, str (int (start) + 1)) or \ + make_sequence (tail, str (int (start) - 1)) + if result: + return [start] + result + + return None + + +for line in fileinput . input (): + line = line . strip () + for i in range (0, len (line)): + result = make_sequence (line, line [0 : i + 1]) + if result: + print ("," . join (result)) + break diff --git a/challenge-116/abigail/python/ch-2.py b/challenge-116/abigail/python/ch-2.py new file mode 100644 index 0000000000..0876b16b64 --- /dev/null +++ b/challenge-116/abigail/python/ch-2.py @@ -0,0 +1,23 @@ +#!/opt/local/bin/python + +# +# See ../README.md +# + +# +# Run as: python ch-2.py < input-file +# + +import fileinput +from math import sqrt + +for line in fileinput . input (): + sum_of_squares = 0 + for char in line: + if "1" <= char and char <= "9": + sum_of_squares = sum_of_squares + int (char) * int (char) + root = int (.5 + sqrt (sum_of_squares)) + if sum_of_squares == root * root: + print (1) + else: + print (0) |
