diff --git a/2021/day7/day7.py b/2021/day7/day7.py index ce6cb31..ba590ec 100755 --- a/2021/day7/day7.py +++ b/2021/day7/day7.py @@ -3,13 +3,13 @@ import sys if __name__ == '__main__': - inp = [int(i) for i in sys.stdin.readline().split(',')] + positions = [int(i) for i in sys.stdin.readline().split(',')] - def calc(f): - return min([ - sum(f(abs(crab-i)) for crab in inp) - for i in range(min(inp), max(inp)+1) - ]) + def calc(movement_cost): + return min( + sum(movement_cost(abs(position-target)) for position in positions) + for target in range(min(positions), max(positions)+1) + ) print(calc(lambda n: n)) print(calc(lambda n: n * (n+1)//2))