summaryrefslogtreecommitdiff
path: root/day1/exercise/missing_num.py
diff options
context:
space:
mode:
Diffstat (limited to 'day1/exercise/missing_num.py')
-rw-r--r--day1/exercise/missing_num.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/day1/exercise/missing_num.py b/day1/exercise/missing_num.py
new file mode 100644
index 0000000..6f19805
--- /dev/null
+++ b/day1/exercise/missing_num.py
@@ -0,0 +1,16 @@
+str_range = '4-7, 9, 12, 15'
+
+ranges = str_range.split(',')
+
+lst = []
+for r in ranges:
+ vals = r.split('-')
+ if len(vals) == 2:
+ lst.extend(range(int(vals[0]), int(vals[1]) + 1))
+ else:
+ lst.append(int(vals[0]))
+
+set_range = set(lst)
+all_elems = set(range(min(lst), max(lst)))
+
+print all_elems - set_range