# https://atcoder.jp/contests/dp/tasks/dp_a



n = int(eval(input()))

h = list(map(int, input().split()))

dp = [float('inf') for _ in range(n)]

dp[0] = 0



for i in range(0, n - 1):

    dp[i + 1] = min(dp[i + 1], dp[i] + abs(h[i + 1] - h[i]))

    if i < n - 2:

        dp[i + 2] = min(dp[i + 2], dp[i] + abs(h[i + 2] - h[i]))



print((dp[-1]))

n = int(eval(input()))

h = list(map(int, input().split()))



dp = [0] * n

dp[1] = abs(h[1] - h[0])

for i in range(2, n):

    dp[i] = min(dp[i - 1] + abs(h[i] - h[i - 1]), dp[i - 2] + abs(h[i] - h[i - 2]))



print((dp[n-1]))
# https://atcoder.jp/contests/dp/tasks/dp_a
n = int(eval(input()))
h = list(map(int, input().split()))
dp = [float("inf") for _ in range(n)]
dp[0] = 0
for i in range(0, n - 1):
    dp[i + 1] = min(dp[i + 1], dp[i] + abs(h[i + 1] - h[i]))
    if i < n - 2:
        dp[i + 2] = min(dp[i + 2], dp[i] + abs(h[i + 2] - h[i]))
print((dp[-1]))

n = int(eval(input()))
h = list(map(int, input().split()))
dp = [0] * n
dp[1] = abs(h[1] - h[0])
for i in range(2, n):
    dp[i] = min(dp[i - 1] + abs(h[i] - h[i - 1]), dp[i - 2] + abs(h[i] - h[i - 2]))
print((dp[n - 1]))

-# https://atcoder.jp/contests/dp/tasks/dp_a -dp = [float("inf") for _ in range(n)] -dp[0] = 0 -for i in range(0, n - 1): -    dp[i + 1] = min(dp[i + 1], dp[i] + abs(h[i + 1] - h[i])) -    if i < n - 2: -        dp[i + 2] = min(dp[i + 2], dp[i] + abs(h[i + 2] - h[i])) -print((dp[-1])) +dp = [0] * n +dp[1] = abs(h[1] - h[0]) +for i in range(2, n): +    dp[i] = min(dp[i - 1] + abs(h[i] - h[i - 1]), dp[i - 2] + abs(h[i] - h[i - 2])) +print((dp[n - 1]))