#include <bits/stdc++.h>
using namespace std;
#define ar array
#define ll long long
const int inf = 2e9;
#define int long long
void solve() {
int n, m;
cin >> n >> m;
vector<int> a(n + 1, 0);
for (int i = 1; i <= n;i++)
cin >> a[i];
vector<int> dp = {0ll};
for (int i = 1; i <= n;i++) {
if (a[i] > m * ((int)dp.size()))
continue;
int x = a[i] - m * (int)(dp.size());
if (dp.back() >= x) {
dp.push_back(x);
}else if (dp.back() < x + m) {
if (dp.size() > 1 && dp[dp.size() - 2] >= x + m) {
dp.back() = x + m;
}
}
}
cout << n - (int)dp.size() + 1;
}
int32_t main() {
ios :: sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
solve();
return 0;
}