Watch
1
0
Fork
You've already forked advent-of-code
0
advent-of-code/2017/day5.py

24 lines
540 B
Python

with open('input/day5') as f:
puzzle_input = tuple(int(line) for line in f.read().splitlines())
def step(jumps, index):
jump = jumps[index]
return (jumps[:index] + (offset(jump),) + jumps[index+1:]), index + jump
def escape(jumps):
index = 0
steps = 0
while 0 <= index < len(jumps):
jumps, index = step(jumps, index)
steps += 1
return steps
def offset(jump):
return jump+1
# print(escape(puzzle_input))
def offset(jump):
return jump + (-1)**(jump >= 3)
print(escape(puzzle_input))