import java.io.*;
import java.util.*;
import java.math.*;

//Mann Shah [ DAIICT ].

public class Main {
	static long mod = (long) (1e9+7);
	static InputReader in;
    static PrintWriter out;
    static Debugger deb;  

    
            
    	public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	}

/* TC space


 */	
		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    }
		
		static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		}
		
} import java.io.*; io.* java import java.util.*; util.* java import java.math.*; math.* java public class Main {
	static long mod = (long) (1e9+7);
	static InputReader in;
    static PrintWriter out;
    static Debugger deb;  

    
            
    	public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	}

/* TC space


 */	
		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    }
		
		static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		}
		
} Main static long mod = (long) (1e9+7); mod (long) (1e9+7) 1e9 7 static InputReader in; in static PrintWriter out; out static Debugger deb; deb public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	} main {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	} in = new InputReader(System.in) in new InputReader(System.in) out = new PrintWriter(System.out) out new PrintWriter(System.out) deb = new Debugger() deb new Debugger() int n = in.nextInt(); n in.nextInt() in.nextInt in int[] a = new int[n]; a new int[n] n for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    } int i=0; int i=0; i 0 i<n i n i++ i++ i {
	    		a[i] = in.nextInt();
	    } {
	    		a[i] = in.nextInt();
	    } a[i] = in.nextInt() a[i] a i in.nextInt() in.nextInt in int[] dp = new int[n+1]; dp new int[n+1] n+1 n 1 dp[0] = 0 dp[0] dp 0 0 dp[1] = Math.abs(a[1]-a[0]) dp[1] dp 1 Math.abs(a[1]-a[0]) Math.abs Math a[1]-a[0] a[1] a 1 a[0] a 0 for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    } int i=2; int i=2; i 2 i<n i n i++ i++ i {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    } {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    } dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2])) dp[i] dp i Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2])) Math.min Math dp[i-1]+Math.abs(a[i]-a[i-1]) dp[i-1] dp i-1 i 1 Math.abs(a[i]-a[i-1]) Math.abs Math a[i]-a[i-1] a[i] a i a[i-1] a i-1 i 1 dp[i-2]+Math.abs(a[i]-a[i-2]) dp[i-2] dp i-2 i 2 Math.abs(a[i]-a[i-2]) Math.abs Math a[i]-a[i-2] a[i] a i a[i-2] a i-2 i 2 out.println(dp[n-1]) out.println out dp[n-1] dp n-1 n 1 out.close() out.close out String args[] args 		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    } InputReader private final InputStream stream; stream private final byte[] buf = new byte[8192]; buf new byte[8192] 8192 private int curChar curChar snumChars; snumChars private SpaceCharFilter filter; filter public InputReader(InputStream stream){
	                this.stream = stream;
	        } InputReader {
	                this.stream = stream;
	        } this.stream = stream this.stream this this.stream stream InputStream stream stream public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        } snext {
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        } if (snumChars == -1) throw new InputMismatchException(); snumChars == -1 snumChars -1 1 throw new InputMismatchException(); new InputMismatchException() if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                } curChar >= snumChars curChar snumChars {
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                } curChar = 0 curChar 0 try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        } catch (IOException e){
                                throw new InputMismatchException();
                        } IOException e {
                                throw new InputMismatchException();
                        } throw new InputMismatchException(); new InputMismatchException() {
                                snumChars = stream.read(buf);
                        } snumChars = stream.read(buf) snumChars stream.read(buf) stream.read stream buf if (snumChars <= 0)
                                return -1; snumChars <= 0 snumChars 0 return -1; -1 1 return buf[curChar++]; buf[curChar++] buf curChar++ curChar public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        } nextInt {
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        } int c = snext(); c snext() snext while (isSpaceChar(c)){
	                    c = snext();
	                } isSpaceChar(c) isSpaceChar c {
	                    c = snext();
	                } c = snext() c snext() snext int sgn = 1; sgn 1 if (c == '-'){
                        sgn = -1;
                        c = snext();
	                } c == '-' c '-' {
                        sgn = -1;
                        c = snext();
	                } sgn = -1 sgn -1 1 c = snext() c snext() snext int res = 0; res 0 do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c)); !isSpaceChar(c) isSpaceChar(c) isSpaceChar c {
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } if (c < '0' || c > '9')
                                throw new InputMismatchException(); c < '0' || c > '9' c < '0' c '0' c > '9' c '9' throw new InputMismatchException(); new InputMismatchException() res *= 10 res 10 res += c - '0' res c - '0' c '0' c = snext() c snext() snext return res * sgn; res * sgn res sgn public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        } nextLong {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        } int c = snext(); c snext() snext while (isSpaceChar(c))
	                {
	                        c = snext();
	                } isSpaceChar(c) isSpaceChar c {
	                        c = snext();
	                } c = snext() c snext() snext int sgn = 1; sgn 1 if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                } c == '-' c '-' {
	                        sgn = -1;
	                        c = snext();
	                } sgn = -1 sgn -1 1 c = snext() c snext() snext long res = 0; res 0 do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c)); !isSpaceChar(c) isSpaceChar(c) isSpaceChar c {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } if (c < '0' || c > '9')
	                                throw new InputMismatchException(); c < '0' || c > '9' c < '0' c '0' c > '9' c '9' throw new InputMismatchException(); new InputMismatchException() res *= 10 res 10 res += c - '0' res c - '0' c '0' c = snext() c snext() snext return res * sgn; res * sgn res sgn public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        } nextIntArray {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        } int a[] = new int[n]; a new int[n] n for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
	                        a[i] = nextInt();
	                } {
	                        a[i] = nextInt();
	                } a[i] = nextInt() a[i] a i nextInt() nextInt return a; a int n n public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        } nextLongArray {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        } long a[] = new long[n]; a new long[n] n for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                } int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
	                        a[i] = nextLong();
	                } {
	                        a[i] = nextLong();
	                } a[i] = nextLong() a[i] a i nextLong() nextLong return a; a int n n public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        } nextArrayList {
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        } ArrayList<Integer> x = new ArrayList<Integer>(); x new ArrayList<Integer>() for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			} int i=0; int i=0; i 0 i<n i n i++ i++ i {
	        				int v = in.nextInt();
	        				x.add(v);
	        			} {
	        				int v = in.nextInt();
	        				x.add(v);
	        			} int v = in.nextInt(); v in.nextInt() in.nextInt in x.add(v) x.add x v return x; x int n n public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        } readString {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        } int c = snext(); c snext() snext while (isSpaceChar(c))
	                {
	                        c = snext();
	                } isSpaceChar(c) isSpaceChar c {
	                        c = snext();
	                } c = snext() c snext() snext StringBuilder res = new StringBuilder(); res new StringBuilder() do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c)); !isSpaceChar(c) isSpaceChar(c) isSpaceChar c {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } res.appendCodePoint(c) res.appendCodePoint res c c = snext() c snext() snext return res.toString(); res.toString() res.toString res public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        } nextLine {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        } int c = snext(); c snext() snext while (isSpaceChar(c))
	                        c = snext(); isSpaceChar(c) isSpaceChar c c = snext() c snext() snext StringBuilder res = new StringBuilder(); res new StringBuilder() do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c)); !isEndOfLine(c) isEndOfLine(c) isEndOfLine c {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } res.appendCodePoint(c) res.appendCodePoint res c c = snext() c snext() snext return res.toString(); res.toString() res.toString res public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        } isSpaceChar {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        } if (filter != null)
	                        return filter.isSpaceChar(c); filter != null filter null return filter.isSpaceChar(c); filter.isSpaceChar(c) filter.isSpaceChar filter c return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1; c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1 c == '\t' c == '\r' c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1 c == ' ' c ' ' c == '\n' c '\n' c == '\r' c '\r' c == '\t' c '\t' c == -1 c -1 1 int c c private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        } isEndOfLine {
	                return c == '\n' || c == '\r' || c == -1;
	        } return c == '\n' || c == '\r' || c == -1; c == '\n' || c == '\r' || c == -1 c == '\n' || c == '\r' || c == -1 c == '\n' c '\n' c == '\r' c '\r' c == -1 c -1 1 int c c public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        } SpaceCharFilter public boolean isSpaceChar(int ch); isSpaceChar int ch ch static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		} Debugger public void n(int x) {
				out.println(x);
			} n {
				out.println(x);
			} out.println(x) out.println out x int x x public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			} a {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			} StringBuilder sb = new StringBuilder(); sb new StringBuilder() for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        } int i=0; int i=0; i 0 i<a.length i a.length a a.length i++ i++ i {
		        		sb.append(a[i]+" ");
		        } {
		        		sb.append(a[i]+" ");
		        } sb.append(a[i]+" ") sb.append sb a[i]+" " a[i] a i " " out.println(sb.toString()) out.println out sb.toString() sb.toString sb int[] a a public class Main {
	static long mod = (long) (1e9+7);
	static InputReader in;
    static PrintWriter out;
    static Debugger deb;  

    
            
    	public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	}

/* TC space


 */	
		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    }
		
		static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		}
		
} public class Main {
	static long mod = (long) (1e9+7);
	static InputReader in;
    static PrintWriter out;
    static Debugger deb;  

    
            
    	public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	}

/* TC space


 */	
		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    }
		
		static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		}
		
} Main
import java.io.*;
import java.util.*;
import java.math.*;

//Mann Shah [ DAIICT ].

public class Main {
	static long mod = (long) (1e9+7);
	static InputReader in;
    static PrintWriter out;
    static Debugger deb;  

    
            
    	public static void main(String args[] ) throws NumberFormatException, IOException  {
			
		in = new InputReader(System.in);
	    out = new PrintWriter(System.out);
	    deb = new Debugger();
	    
	    int n = in.nextInt();
	    int[] a = new int[n];
	    for(int i=0;i<n;i++) {
	    		a[i] = in.nextInt();
	    }
	    int[] dp = new int[n+1];
	    
	    dp[0] = 0;
	    dp[1] = Math.abs(a[1]-a[0]);
	    for(int i=2;i<n;i++) {
	    		dp[i] = Math.min(dp[i-1]+Math.abs(a[i]-a[i-1]),dp[i-2]+Math.abs(a[i]-a[i-2]));
	    }
	    out.println(dp[n-1]);
	    
	    
	    out.close();
	}

/* TC space


 */	
		static class InputReader
	    {
	        private final InputStream stream;
	        private final byte[] buf = new byte[8192];
	        private int curChar, snumChars;
	        private SpaceCharFilter filter;

	        public InputReader(InputStream stream){
	                this.stream = stream;
	        }
	        public int snext(){
                if (snumChars == -1) throw new InputMismatchException();
                if (curChar >= snumChars){
                        curChar = 0;
                        try{
                                snumChars = stream.read(buf);
                        } catch (IOException e){
                                throw new InputMismatchException();
                        }
                        if (snumChars <= 0)
                                return -1;
                }
                return buf[curChar++];
	        }

	        public int nextInt(){
	                int c = snext();
	                while (isSpaceChar(c)){
	                    c = snext();
	                }
	                int sgn = 1;
	                if (c == '-'){
                        sgn = -1;
                        c = snext();
	                }
	                int res = 0;
	                do{
                        if (c < '0' || c > '9')
                                throw new InputMismatchException();
                        res *= 10;
                        res += c - '0';
                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public long nextLong()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                int sgn = 1;
	                if (c == '-')
	                {
	                        sgn = -1;
	                        c = snext();
	                }
	                long res = 0;
	                do
	                {
	                        if (c < '0' || c > '9')
	                                throw new InputMismatchException();
	                        res *= 10;
	                        res += c - '0';
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res * sgn;
	        }

	        public int[] nextIntArray(int n)
	        {
	                int a[] = new int[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextInt();
	                }
	                return a;
	        }

	        public long[] nextLongArray(int n)
	        {
	                long a[] = new long[n];
	                for (int i = 0; i < n; i++)
	                {
	                        a[i] = nextLong();
	                }
	                return a;
	        }
	        
	        public ArrayList<Integer> nextArrayList(int n){
	        			ArrayList<Integer> x = new ArrayList<Integer>();
	        			for(int i=0;i<n;i++) {
	        				int v = in.nextInt();
	        				x.add(v);
	        			}
	        			return x;
	        }

	        public String readString()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                {
	                        c = snext();
	                }
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isSpaceChar(c));
	                return res.toString();
	        }

	        public String nextLine()
	        {
	                int c = snext();
	                while (isSpaceChar(c))
	                        c = snext();
	                StringBuilder res = new StringBuilder();
	                do
	                {
	                        res.appendCodePoint(c);
	                        c = snext();
	                } while (!isEndOfLine(c));
	                return res.toString();
	        }

	        public boolean isSpaceChar(int c)
	        {
	                if (filter != null)
	                        return filter.isSpaceChar(c);
	                return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1;
	        }

	        private boolean isEndOfLine(int c)
	        {
	                return c == '\n' || c == '\r' || c == -1;
	        }

	        public interface SpaceCharFilter
	        {
	                public boolean isSpaceChar(int ch);
	        }

	    }
		
		static class Debugger{
			public void n(int x) {
				out.println(x);
			}
			
			public void a(int[] a) {
		        StringBuilder sb = new StringBuilder();
		        for(int i=0;i<a.length;i++) {
		        		sb.append(a[i]+" ");
		        }
		        out.println(sb.toString());
			}
		}
		
}