2015 day 5

This commit is contained in:
2024-12-12 00:07:08 +01:00
parent eaf873b458
commit f497ad035b
4 changed files with 1048 additions and 0 deletions

1000
2015/day-5/input.txt Normal file

File diff suppressed because it is too large Load Diff

21
2015/day-5/part-1.py Normal file
View File

@@ -0,0 +1,21 @@
import os
file_path = os.path.join(os.path.dirname(__file__), "./input.txt")
# file_path = os.path.join(os.path.dirname(__file__), "./test-input.txt")
input = open(file_path).read().strip()
lines = input.split("\n")
vowels = list("aeiou")
forbidden_strings = ["ab", "cd", "pq", "xy"]
count = 0
for line in lines:
if (
any([forbidden_string in line for forbidden_string in forbidden_strings])
or sum([line.count(vowel) for vowel in vowels]) < 3
or not any([line[i + 1] == line[i] for i in range(len(line) - 1)])
):
continue
count += 1
print(count)

22
2015/day-5/part-2.py Normal file
View File

@@ -0,0 +1,22 @@
import os
import re
file_path = os.path.join(os.path.dirname(__file__), "./input.txt")
# file_path = os.path.join(os.path.dirname(__file__), "./test-input.txt")
input = open(file_path).read().strip()
lines = input.split("\n")
count = 0
for line in lines:
if not any(
[
len(re.findall(pair, line)) >= 2
for pair in {line[i] + line[i + 1] for i in range(len(line) - 1)}
]
) or not any([line[i + 2] == line[i] for i in range(len(line) - 2)]):
continue
count += 1
print(count)

View File

@@ -0,0 +1,5 @@
qjhvhtzxzqqjkmpb
xxyxx
uurcxstgmygtbstg
ieodomkazucvgmuy
aaa