n=int(eval(input()))

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



dp=[float('inf')]*n

dp[0]=0#初期条件を設定



for i in range(1,n):

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

    #i=1の時i-2<0となるので先にここを計算する

    if i>=2:

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

        

print((dp[-1]))
#DP-A

n=int(eval(input()))

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



dp=[float('inf')]*n

dp[0]=0

for i in range(1,n):



    #2パターンの遷移を考え小さいほうを保存する

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

    if i>1:

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



print((dp[-1]))
n = int(eval(input()))
h = list(map(int, input().split()))
dp = [float("inf")] * n
dp[0] = 0  # 初期条件を設定
for i in range(1, n):
    dp[i] = min(dp[i], dp[i - 1] + abs(h[i] - h[i - 1]))
    # i=1の時i-2<0となるので先にここを計算する
    if i >= 2:
        dp[i] = min(dp[i], dp[i - 2] + abs(h[i] - h[i - 2]))
print((dp[-1]))

# DP-A
n = int(eval(input()))
h = list(map(int, input().split()))
dp = [float("inf")] * n
dp[0] = 0
for i in range(1, n):
    # 2パターンの遷移を考え小さいほうを保存する
    dp[i] = dp[i - 1] + abs(h[i] - h[i - 1])
    if i > 1:
        dp[i] = min(dp[i], dp[i - 2] + abs(h[i] - h[i - 2]))
print((dp[-1]))

+# DP-A -dp[0] = 0  # 初期条件を設定 +dp[0] = 0 -    dp[i] = min(dp[i], dp[i - 1] + abs(h[i] - h[i - 1])) -    # i=1の時i-2<0となるので先にここを計算する -    if i >= 2: +    # 2パターンの遷移を考え小さいほうを保存する +    dp[i] = dp[i - 1] + abs(h[i] - h[i - 1]) +    if i > 1: