Rust Array Change
fn array_change(mut a: Vec<i64>) -> i64 {
    let mut min = 0;
    for k in 0..a.len().saturating_sub(1) {
        if a[k] >= a[k + 1] {
            let dif = a[k] - a[k + 1] + 1;
            a[k + 1] += dif;
            min += dif;
        }
    }

    min
}

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