#include<iostream>
#include<iomanip>
#include<algorithm>
#include<stdio.h>
using namespace std;
int n, m, d, l, s[50005], g, ans, p[10000][10000], x=1;
int main()
{
cin >> n >> m >> d >> l;
ans = n;
for (int i = 1; i <= n; i++)
{
cin >> s[i];
}
sort(s + 1, s + 1 + n);
int h;
if (n%m == 0)h = n / m;
else h = n / m + 1;
for (int i = 1; i <= h; i++)
{
for (int j = 1; j <= m; j++)
{
p[i][j] = s[x++];
if (x == n)break;
}
}
for (int i = 1; i <= m; i++)
{
g = 0;
for (int j = 1; j <= h; j++)
{
if (p[j][i] == 0)break;
p[j][i] -= d * (j - 1 - g);
if (p[j][i] < l)
{
ans--; g++;
}
}
}
cout << ans;
return 0;
}