Java Array Change
public class Solution {
    public static long arrayChange(int[] a) {
        long min = 0;
        long[] arr = new long[a.length];
        for (int i = 0; i < a.length; i++) {
            arr[i] = a[i];
        }

        for (int k = 0; k < arr.length - 1; k++) {
            if (arr[k] >= arr[k + 1]) {
                long dif = arr[k] - arr[k + 1] + 1;
                arr[k + 1] += dif;
                min += dif;
            }
        }

        return min;
    }
}

This moves left to right and bumps values only when needed so the array becomes strictly increasing.