aboutsummaryrefslogtreecommitdiff
path: root/challenge-196/sgreen/python/ch-2.py
diff options
context:
space:
mode:
Diffstat (limited to 'challenge-196/sgreen/python/ch-2.py')
-rwxr-xr-xchallenge-196/sgreen/python/ch-2.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/challenge-196/sgreen/python/ch-2.py b/challenge-196/sgreen/python/ch-2.py
new file mode 100755
index 0000000000..ce0f95cd62
--- /dev/null
+++ b/challenge-196/sgreen/python/ch-2.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python3
+
+import sys
+
+
+def main(n):
+ solutions = []
+
+ # Go through the list until it is exhausted
+ while len(n):
+ start = end = n.pop(0)
+
+ # See if the next number is one more than the last value
+ while len(n) > 0 and n[0] == end+1:
+ end = n.pop(0)
+
+ # We have found a range
+ if start != end:
+ solutions.append(f'[{start},{end}]')
+
+ # Print solution
+ if solutions:
+ print(*solutions, sep=', ')
+ else:
+ print('No solutions found!')
+
+
+if __name__ == '__main__':
+ # Turn the strings into integers
+ n = [int(i) for i in sys.argv[1:]]
+ main(n)