#include<bits/stdc++.h>
using namespace std;
#define LL long long
const int N=1e5+5;

LL n,m,v,p;
LL a[N],h[N];
bool ok(int x)
{
	if(x>n) return 1;
	for(int i=1;i<=n;i++)
		h[i]=a[i];
	LL all=m*v;
	for(int i=1;i<=x;i++)
		h[i]+=m;
	all-=m*x;
	for(int i=n-p+2;i<=n;i++)
		h[i]+=m;
	all-=m*(p-1);
	if(h[n-p+1]>h[x]) return 0;
	for(int i=x+1;i<=n-p+1;i++)
		all+=h[i]-h[x];
	if(all>0) return 0;
	return 1;
}

int main()
{
	
	cin>>n>>m>>v>>p;
	for(int i=1;i<=n;i++)
		cin>>a[i];
	sort(a+1,a+n+1);
	//cout<<ok(4)<<'\n';
	int can=1<<20;
	for(int i=19;i>=0;i--)
	{
		if(ok(can-(1<<i))) can-=(1<<i);
		//cout<<can<<'\n';
	}
	cout<<n-can+1<<'\n';
	
	return 0;
}