diff options
Diffstat (limited to 'day5/day5.py')
-rw-r--r-- | day5/day5.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/day5/day5.py b/day5/day5.py new file mode 100644 index 0000000..b544b61 --- /dev/null +++ b/day5/day5.py @@ -0,0 +1,18 @@ +"""Peter Norvig solution. Forgot to do day 5.""" +data = map(str.strip, open("input")) + +ID = int + +def seat_id(seat: str, table=str.maketrans('FLBR', '0011')) -> ID: + "Treat a seat description as a binary number; convert to int." + return ID(seat.translate(table), base=2) + + +ids = [seat_id(x) for x in data] + +# Part 1 +print(max(ids)) + +# Part 2 +[missing] = set(range(min(ids), max(ids))) - set(ids) +print(missing) |