Skip to content

Instantly share code, notes, and snippets.

@gmodena
Created December 5, 2020 22:24
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save gmodena/3960fdaf4538c067bfa6b840b1df2c75 to your computer and use it in GitHub Desktop.
def to_binary(string: str):
string = (
string.replace("B", "1").replace("F", "0").replace("R", "1").replace("L", "0")
)
return int(string, base=2)
def part1(strings):
return max([to_binary(string) for string in strings])
def part2(strings):
seats = sorted([to_binary(string) for string in strings])
for i, _ in enumerate(seats):
if seats[i] - seats[i - 1] == 2:
return seats[i] - 1
if __name__ == "__main__":
with open("input.txt") as infile:
strings = [string.strip() for string in infile.readlines()]
print(f"Part 1 {part1(strings)}")
print(f"Part 2 {part2(strings)}")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment