diff options
Diffstat (limited to 'day1/exercise/missing_num.py')
-rw-r--r-- | day1/exercise/missing_num.py | 16 |
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 |