From 314b38e25c5df000df385fe431e2d42e3da139a9 Mon Sep 17 00:00:00 2001 From: Michal Kunc Date: Tue, 6 Dec 2022 09:53:42 +0100 Subject: [PATCH] Add day 6 solution --- 06/example1 | 1 + 06/example2 | 1 + 06/example3 | 1 + 06/example4 | 1 + 06/example5 | 1 + 06/tuning.py | 19 +++++++++++++++++++ 6 files changed, 24 insertions(+) create mode 100644 06/example1 create mode 100644 06/example2 create mode 100644 06/example3 create mode 100644 06/example4 create mode 100644 06/example5 create mode 100644 06/tuning.py diff --git a/06/example1 b/06/example1 new file mode 100644 index 0000000..5a2b0a7 --- /dev/null +++ b/06/example1 @@ -0,0 +1 @@ +mjqjpqmgbljsphdztnvjfqwrcgsmlb \ No newline at end of file diff --git a/06/example2 b/06/example2 new file mode 100644 index 0000000..9e3311c --- /dev/null +++ b/06/example2 @@ -0,0 +1 @@ +bvwbjplbgvbhsrlpgdmjqwftvncz \ No newline at end of file diff --git a/06/example3 b/06/example3 new file mode 100644 index 0000000..cca46f5 --- /dev/null +++ b/06/example3 @@ -0,0 +1 @@ +nppdvjthqldpwncqszvftbrmjlhg \ No newline at end of file diff --git a/06/example4 b/06/example4 new file mode 100644 index 0000000..848af1c --- /dev/null +++ b/06/example4 @@ -0,0 +1 @@ +nznrnfrfntjfmvfwmzdfjlvtqnbhcprsg \ No newline at end of file diff --git a/06/example5 b/06/example5 new file mode 100644 index 0000000..a4fc5ba --- /dev/null +++ b/06/example5 @@ -0,0 +1 @@ +zcfzfwzzqfrljwzlrfnpqdbhtmscgvjw \ No newline at end of file diff --git a/06/tuning.py b/06/tuning.py new file mode 100644 index 0000000..8a5f7ce --- /dev/null +++ b/06/tuning.py @@ -0,0 +1,19 @@ + +import fileinput +from typing import Iterable + +def solve(data: str) -> int: + for idx in range(len(data)): + if len(set(list(data[idx:idx+4]))) == 4: + return idx + 4 + +def solveb(data: str) -> int: + for idx in range(len(data)): + if len(set(list(data[idx:idx+14]))) == 14: + return idx + 14 + +if __name__ == "__main__": + with fileinput.input() as f: + data = f.readline() + print(solve(data)) + print(solveb(data))