mirror of
https://github.com/thib8956/advent-of-code.git
synced 2024-12-27 06:16:30 +00:00
29 lines
731 B
Python
29 lines
731 B
Python
#! /usr/bin/env python3
|
|
|
|
|
|
def parse_line(line):
|
|
repeat_range, letter, pwd = line.split(' ')
|
|
letter = letter[0]
|
|
repeat_min, repeat_max = repeat_range.split('-')
|
|
repeat_min, repeat_max = int(repeat_min), int(repeat_max)
|
|
return letter, range(repeat_min, repeat_max + 1), pwd
|
|
|
|
|
|
def test_password(line):
|
|
letter, repeat_range, pwd = parse_line(line)
|
|
count = pwd.count(letter)
|
|
return count in repeat_range
|
|
|
|
|
|
def main(inp):
|
|
with open(inp) as passwds:
|
|
valid_counter = 0
|
|
for l in passwds:
|
|
if test_password(l):
|
|
valid_counter += 1
|
|
print(f"Number of valid password in input : {valid_counter}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main('./input.txt')
|