Solved part 1 of day 15
This commit is contained in:
parent
84a8e32404
commit
5d2f2d1ddd
1
15/input.txt
Normal file
1
15/input.txt
Normal file
@ -0,0 +1 @@
|
||||
11,0,1,10,5,19
|
21
15/part1.py
Normal file
21
15/part1.py
Normal file
@ -0,0 +1,21 @@
|
||||
|
||||
|
||||
|
||||
def getStartingNumbers(filename):
|
||||
with open(filename, "r") as f:
|
||||
return [int(n) for n in f.read().split(",")]
|
||||
|
||||
numbers = getStartingNumbers("input.txt")
|
||||
occurences = {n: [i] for i,n in enumerate(numbers)}
|
||||
|
||||
while len(numbers) < 2020:
|
||||
lastNumber = numbers[-1]
|
||||
if len(occurences[lastNumber]) > 1:
|
||||
number = occurences[lastNumber][-1] - occurences[lastNumber][-2]
|
||||
else:
|
||||
number = 0
|
||||
occurences[number] = occurences.get(number, [])
|
||||
occurences[number].append(len(numbers))
|
||||
numbers.append(number)
|
||||
|
||||
print(numbers[2019])
|
1
15/test.txt
Normal file
1
15/test.txt
Normal file
@ -0,0 +1 @@
|
||||
3,2,1
|
Loading…
Reference in New Issue
Block a user