aoc2022/day06.py
2022-12-06 08:46:53 +01:00

43 lines
1.0 KiB
Python

from tools.aoc import AOCDay
from typing import Any
class Day(AOCDay):
inputs = [
[
(7, "input6_test"),
(5, "input6_test2"),
(6, "input6_test3"),
(10, "input6_test4"),
(11, "input6_test5"),
(1034, "input6_dennis"),
(1042, "input6"),
],
[
(19, "input6_test"),
(23, "input6_test2"),
(23, "input6_test3"),
(29, "input6_test4"),
(26, "input6_test5"),
(2472, "input6_dennis"),
(2980, "input6"),
]
]
def get_start_distinct(self, count: int = 4):
inp = self.getInput()
for i in range(count - 1, len(inp)):
if len(set(list(inp[i-(count - 1):i+1]))) == count:
return i + 1
def part1(self) -> Any:
return self.get_start_distinct()
def part2(self) -> Any:
return self.get_start_distinct(14)
if __name__ == '__main__':
day = Day(2022, 6)
day.run(verbose=True)