n = int(eval(input()))

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

#高さ。0~n-1でアクセス



#足場Nにたどり着くまでの最小コストを格納。アクセスは[N-1]

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



dp[0] = 0

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



import sys

sys.setrecursionlimit(10000000)

#足場x（0～n-1）にたどり着くまでの最小コストを返す関数。

def getdp(x):

    global dp #これでいいのか？

    if dp[x] != float("inf"): return dp[x] #0,1の場合と、既に求めた場合は値を返す

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

    #2つ左から飛ぶか1つ左から飛ぶかの最小値がxのdp。

    return(dp[x])



print((getdp(n-1)))

n = int(eval(input()))

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

#高さ。0~n-1でアクセス



#足場Nにたどり着くまでの最小コストを格納。アクセスは[N-1]

dp = [-1] * n



dp[0] = 0

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



import sys

sys.setrecursionlimit(10000000)

#足場x（0～n-1）にたどり着くまでの最小コストを返す関数。

def getdp(x):

    global dp #これでいいのか？

    if dp[x] != -1: return dp[x] #0,1の場合と、既に求めた場合は値を返す

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

    #2つ左から飛ぶか1つ左から飛ぶかの最小値がxのdp。

    return(dp[x])



print((getdp(n-1)))

n = int(eval(input()))
h = list(map(int, input().split()))
# 高さ。0~n-1でアクセス
# 足場Nにたどり着くまでの最小コストを格納。アクセスは[N-1]
dp = [float("inf")] * n
dp[0] = 0
dp[1] = abs(h[0] - h[1])
import sys

sys.setrecursionlimit(10000000)
# 足場x（0～n-1）にたどり着くまでの最小コストを返す関数。
def getdp(x):
    global dp  # これでいいのか？
    if dp[x] != float("inf"):
        return dp[x]  # 0,1の場合と、既に求めた場合は値を返す
    dp[x] = min(
        getdp(x - 2) + abs(h[x] - h[x - 2]), getdp(x - 1) + abs(h[x] - h[x - 1])
    )
    # 2つ左から飛ぶか1つ左から飛ぶかの最小値がxのdp。
    return dp[x]


print((getdp(n - 1)))

n = int(eval(input()))
h = list(map(int, input().split()))
# 高さ。0~n-1でアクセス
# 足場Nにたどり着くまでの最小コストを格納。アクセスは[N-1]
dp = [-1] * n
dp[0] = 0
dp[1] = abs(h[0] - h[1])
import sys

sys.setrecursionlimit(10000000)
# 足場x（0～n-1）にたどり着くまでの最小コストを返す関数。
def getdp(x):
    global dp  # これでいいのか？
    if dp[x] != -1:
        return dp[x]  # 0,1の場合と、既に求めた場合は値を返す
    dp[x] = min(
        getdp(x - 2) + abs(h[x] - h[x - 2]), getdp(x - 1) + abs(h[x] - h[x - 1])
    )
    # 2つ左から飛ぶか1つ左から飛ぶかの最小値がxのdp。
    return dp[x]


print((getdp(n - 1)))

-dp = [float("inf")] * n +dp = [-1] * n -    if dp[x] != float("inf"): +    if dp[x] != -1: