import java.math.BigDecimal;
import java.util.Scanner;

public class Main {

	public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	}

	public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	}


	// ************************************
	// Common
	// ************************************

	private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	}

} import java.math.BigDecimal; BigDecimal java.math import java.util.Scanner; Scanner java.util public class Main {

	public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	}

	public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	}


	// ************************************
	// Common
	// ************************************

	private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	}

} Main public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	} solve {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	} int max = 0; max 0 double step_sum = 0; step_sum 0 for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		} {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		} if (i == 0) {
				max = aArray[i];
				continue;
			} i == 0 i 0 {
				max = aArray[i];
				continue;
			} max = aArray[i] max aArray[i] aArray i continue; if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			} max > aArray[i] max aArray[i] aArray i {
				step_sum = step_sum + (max - aArray[i]);
			} step_sum = step_sum + (max - aArray[i]) step_sum step_sum + (max - aArray[i]) step_sum (max - aArray[i]) max aArray[i] aArray i if (aArray[i] > max) {
				max = aArray[i];
			} aArray[i] > max aArray[i] aArray i max {
				max = aArray[i];
			} max = aArray[i] max aArray[i] aArray i System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", "")) System.out.println System.out System System.out BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", "") BigDecimal.valueOf(step_sum).toPlainString().replaceAll BigDecimal.valueOf(step_sum).toPlainString() BigDecimal.valueOf(step_sum).toPlainString BigDecimal.valueOf(step_sum) BigDecimal.valueOf BigDecimal step_sum "\\.0" "" int n n int[] aArray aArray public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	} main {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	} long start = System.currentTimeMillis(); start System.currentTimeMillis() System.currentTimeMillis System Scanner scanner = new Scanner(System.in); scanner new Scanner(System.in) try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		} {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		} scanner.close() scanner.close scanner {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} int n  = scanner.nextInt(); n scanner.nextInt() scanner.nextInt scanner scanner.nextLine() scanner.nextLine scanner int[] aArray = new int[n]; aArray new int[n] n for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
				aArray[i] = scanner.nextInt();
			} {
				aArray[i] = scanner.nextInt();
			} aArray[i] = scanner.nextInt() aArray[i] aArray i scanner.nextInt() scanner.nextInt scanner scanner.nextLine() scanner.nextLine scanner solve(n, aArray) solve n aArray long end = System.currentTimeMillis(); end System.currentTimeMillis() System.currentTimeMillis System String[] args args private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	} changeArrayStringToInt {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	} String[] strArray = line.split(" "); strArray line.split(" ") line.split line " " int[] intArray = new int[strArray.length]; intArray new int[strArray.length] strArray.length strArray strArray.length for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		} int i = 0; int i = 0; i 0 i < intArray.length i intArray.length intArray intArray.length i++ i++ i {
			intArray[i] = Integer.parseInt(strArray[i]);
		} {
			intArray[i] = Integer.parseInt(strArray[i]);
		} intArray[i] = Integer.parseInt(strArray[i]) intArray[i] intArray i Integer.parseInt(strArray[i]) Integer.parseInt Integer strArray[i] strArray i return intArray; intArray String line line public class Main {

	public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	}

	public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	}


	// ************************************
	// Common
	// ************************************

	private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	}

} public class Main {

	public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	}

	public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	}


	// ************************************
	// Common
	// ************************************

	private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	}

} Main
import java.math.BigDecimal;
import java.util.Scanner;

public class Main {

	public static void solve (int n, int[] aArray) {

		int max = 0;
		double step_sum = 0;
		for (int i = 0; i < n; i++) {
			// １人目は必ず０
			if (i == 0) {
				max = aArray[i];
				continue;
			}

			// ステップ足し込む
			if (max > aArray[i]) {
				step_sum = step_sum + (max - aArray[i]);
			}

			// 必要であれば最大を入れ替える
			if (aArray[i] > max) {
				max = aArray[i];
			}

		}

//		System.out.println(("" + step_sum).replaceAll("\\.0", ""));
		System.out.println(BigDecimal.valueOf(step_sum).toPlainString().replaceAll("\\.0", ""));

	}

	public static void main(String[] args) {

		long start = System.currentTimeMillis();
	    // 引数で標準入力System.inを指定する
	    Scanner scanner = new Scanner(System.in);
		try {

		    // 1行目を取得(a)
			int n  = scanner.nextInt();
			scanner.nextLine();

			int[] aArray = new int[n];
			for (int i = 0; i < n; i++) {
				aArray[i] = scanner.nextInt();
			}
			scanner.nextLine();

			solve(n, aArray);

		} finally {
		    // Scannerクラスのインスタンスをクローズ
		    scanner.close();
		}
		long end = System.currentTimeMillis();
		// System.out.println((end - start) );
	}


	// ************************************
	// Common
	// ************************************

	private static final int[] changeArrayStringToInt(String line) {

		String[] strArray = line.split(" ");

		int[] intArray = new int[strArray.length];

		for (int i = 0; i < intArray.length; i++) {
			intArray[i] = Integer.parseInt(strArray[i]);
		}
		return intArray;
	}

}
