implicit none
integer,allocatable,dimension(:)::dp,h
integer i,n,j

read(5,*)n
allocate(dp(n),h(n))
read(5,*)(h(i),i=1,n)

dp(1)=0
dp(2:n)=100000

do j=2,n
dp(j)=min(dp(j),dp(j-1)+abs(h(j)-h(j-1)))

if(j>2) then
dp(j)=min(dp(j),dp(j-2)+abs(h(j)-h(j-2)))
endif
enddo

write(6,*) dp(n)

deallocate(dp,h)
end