import java.util.*;
import java.io.*;
public class Main
{
	public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	}
	
	static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } 
} import java.util.*; util.* java import java.io.*; io.* java public class Main
{
	public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	}
	
	static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } 
} Main public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	} main {
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	} FastReader s = new FastReader(); s new FastReader() int n = s.nextInt(); n s.nextInt() s.nextInt s long sum = 0; sum 0 int max = Integer.MIN_VALUE; max Integer.MIN_VALUE Integer Integer.MIN_VALUE int[] arr = new int[n]; arr new int[n] n for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		} {
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		} arr[i] = s.nextInt() arr[i] arr i s.nextInt() s.nextInt s if(arr[i] < max){
		        sum += max-arr[i];
		    } arr[i] < max arr[i] arr i max {
		        sum += max-arr[i];
		    } sum += max-arr[i] sum max-arr[i] max arr[i] arr i max = Math.max(max, arr[i]) max Math.max(max, arr[i]) Math.max Math max arr[i] arr i System.out.println(sum) System.out.println System.out System System.out sum String[] args args static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } FastReader BufferedReader br; br StringTokenizer st; st public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } FastReader { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } br = new BufferedReader(new
                     InputStreamReader(System.in)) br new BufferedReader(new
                     InputStreamReader(System.in)) String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } next { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } st == null || !st.hasMoreElements() st == null st null !st.hasMoreElements() st.hasMoreElements() st.hasMoreElements st { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } IOException  e { 
                    e.printStackTrace(); 
                } e.printStackTrace() e.printStackTrace e { 
                    st = new StringTokenizer(br.readLine()); 
                } st = new StringTokenizer(br.readLine()) st new StringTokenizer(br.readLine()) return st.nextToken(); st.nextToken() st.nextToken st int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } nextInt { 
            return Integer.parseInt(next()); 
        } return Integer.parseInt(next()); Integer.parseInt(next()) Integer.parseInt Integer next() next long nextLong() 
        { 
            return Long.parseLong(next()); 
        } nextLong { 
            return Long.parseLong(next()); 
        } return Long.parseLong(next()); Long.parseLong(next()) Long.parseLong Long next() next double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } nextDouble { 
            return Double.parseDouble(next()); 
        } return Double.parseDouble(next()); Double.parseDouble(next()) Double.parseDouble Double next() next String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } nextLine { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } String str = ""; str "" try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } catch (IOException e) 
            { 
                e.printStackTrace(); 
            } IOException e { 
                e.printStackTrace(); 
            } e.printStackTrace() e.printStackTrace e { 
                str = br.readLine(); 
            } str = br.readLine() str br.readLine() br.readLine br return str; str public class Main
{
	public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	}
	
	static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } 
} public class Main
{
	public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	}
	
	static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } 
} Main
import java.util.*;
import java.io.*;
public class Main
{
	public static void main(String[] args) throws Exception{
		FastReader s = new FastReader();
		int n = s.nextInt();
		long sum = 0;
		int max = Integer.MIN_VALUE;
		int[] arr = new int[n];
		for(int i = 0; i < n; i++){
		    arr[i] = s.nextInt();
		    if(arr[i] < max){
		        sum += max-arr[i];
		    }
		    max = Math.max(max, arr[i]);
		}
		System.out.println(sum);
	}
	
	static class FastReader 
    { 
        BufferedReader br; 
        StringTokenizer st; 
  
        public FastReader() 
        { 
            br = new BufferedReader(new
                     InputStreamReader(System.in)); 
        } 
  
        String next() 
        { 
            while (st == null || !st.hasMoreElements()) 
            { 
                try
                { 
                    st = new StringTokenizer(br.readLine()); 
                } 
                catch (IOException  e) 
                { 
                    e.printStackTrace(); 
                } 
            } 
            return st.nextToken(); 
        } 
  
        int nextInt() 
        { 
            return Integer.parseInt(next()); 
        } 
  
        long nextLong() 
        { 
            return Long.parseLong(next()); 
        } 
  
        double nextDouble() 
        { 
            return Double.parseDouble(next()); 
        } 
  
        String nextLine() 
        { 
            String str = ""; 
            try
            { 
                str = br.readLine(); 
            } 
            catch (IOException e) 
            { 
                e.printStackTrace(); 
            } 
            return str; 
        } 
    } 
}
