1234567891011121314 |
- from shared import knot_hash, add_connected_components
-
- with open('data/14.txt', 'r') as file:
- seed = file.readline().strip()
- grid = '\n'.join([bin(int(knot_hash(f'{seed}-{i}'), 16))[2:].zfill(128) for i in range(128)])
-
- count = 0
- regions = []
- for offset, cell in enumerate(grid):
- if cell == '1':
- count += 1
- add_connected_components(regions, [offset-1, offset-129], {offset})
- print(f'Part one: {count}')
- print(f'Part two: {len(regions)}')
|