aboutsummaryrefslogtreecommitdiff
path: root/challenge-111/abigail/python
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-111/abigail/python')
-rw-r--r--challenge-111/abigail/python/ch-1.py31
-rw-r--r--challenge-111/abigail/python/ch-2.py35
2 files changed, 66 insertions, 0 deletions
diff --git a/challenge-111/abigail/python/ch-1.py b/challenge-111/abigail/python/ch-1.py
new file mode 100644
index 0000000000..ba91c8009f
--- /dev/null
+++ b/challenge-111/abigail/python/ch-1.py
@@ -0,0 +1,31 @@
+#!/opt/local/bin/python
+
+#
+# See ../README.md
+#
+
+#
+# Run as: python ch-1.py < input-file
+#
+
+MATRIX_SIZE = 5
+
+import fileinput
+import re
+
+#
+# Read in the matrix
+#
+matrix = {}
+for i in range (MATRIX_SIZE):
+ for n in re . findall (r'-?[0-9]+', input ()):
+ matrix [n] = 1
+
+#
+# For the rest of the input, check whether it's in the matrix
+#
+for line in fileinput . input ():
+ if line . strip () in matrix:
+ print ("1")
+ else:
+ print ("0")
diff --git a/challenge-111/abigail/python/ch-2.py b/challenge-111/abigail/python/ch-2.py
new file mode 100644
index 0000000000..ce79d6b393
--- /dev/null
+++ b/challenge-111/abigail/python/ch-2.py
@@ -0,0 +1,35 @@
+#!/opt/local/bin/python
+
+#
+# See ../README.md
+#
+
+#
+# Run as: python ch-2.py < input-file
+#
+
+import fileinput
+import string
+import re
+
+
+#
+# Create a pattern which matches words with their characters in lexical order.
+#
+pat = "^"
+for x in list (string . ascii_lowercase):
+ pat = pat + x + "*"
+pat += "$"
+
+
+#
+# Match strings with their characters in lexical order, and remember
+# the longest of them.
+#
+longest = ""
+for line in fileinput . input ():
+ line = line . strip ()
+ if re . match (pat, line . lower ()) and len (line) > len (longest):
+ longest = line
+
+print (longest)