#include <bits/stdc++.h>
using namespace std;
const int maxn = 3030;
long long dp[2][maxn];
int a[maxn], x[maxn];
int main() {
  int n;
  cin >> n;
  for (int i = (0); i < (n); i++) scanf("%d", a + i), a[i] -= i, x[i] = a[i];
  sort(x, x + n);
  int m = unique(x, x + n) - x;
  int id = 0;
  for (int i = (0); i < (m); i++) {
    dp[0][i] = abs(a[0] - x[i]);
    if (i) dp[0][i] = min(dp[0][i], dp[0][i - 1]);
  }
  for (int i = (1); i < (n); i++) {
    for (int j = (0); j < (m); j++) {
      dp[id ^ 1][j] = dp[id][j] + abs(a[i] - x[j]);
      if (j) dp[id ^ 1][j] = min(dp[id ^ 1][j - 1], dp[id ^ 1][j]);
    }
    id ^= 1;
  }
  long long ans;
  for (int i = (0); i < (m); i++) ans = min(dp[id][i], ans);
  cout << ans << endl;
  return 0;
}
