22 lines
760 B
Python
22 lines
760 B
Python
|
with open("input_day4.txt") as file:
|
||
|
lines = [line.rstrip() for line in file]
|
||
|
|
||
|
|
||
|
winning_numbers = [line.split(": ")[1].split(" | ")[0].split(" ") for line in lines]
|
||
|
winning_numbers = [list(filter(lambda a: a != '', winning_numbers[i])) for i in range(len(winning_numbers))]
|
||
|
|
||
|
numbers_have = [line.split(": ")[1].split(" | ")[1].split(" ") for line in lines]
|
||
|
numbers_have = [list(filter(lambda a: a != '', numbers_have[i])) for i in range(len(numbers_have))]
|
||
|
|
||
|
index = 0
|
||
|
sum = 0
|
||
|
for card in winning_numbers:
|
||
|
card_matches = 0
|
||
|
for number in card:
|
||
|
if str(number) in numbers_have[index]:
|
||
|
card_matches+=1
|
||
|
index+=1
|
||
|
print(f"{card_matches}")
|
||
|
if card_matches>0:
|
||
|
sum+=pow(2,card_matches-1)
|
||
|
print(sum)
|