#include <bits/stdc++.h>
using namespace std ;

#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0) ;
#define int long long int
#define pb push_back
#define pob pop_back
#define mod 1000000007

int32_t main()
{
    IOS ;
    
    int n, k, x ;
    cin >> n >> k >> x ;
    
    int a[n] ;
    for (int i=0; i<n; i++)
        cin >> a[i] ;
    sort(a, a+n);
    
    // store & sort gaps
    vector<int> gaps ;
    for (int i=1; i<n; i++)
    {
        if (a[i]-a[i-1]>x)
            gaps.pb(a[i]-a[i-1]) ;
    }
    sort(gaps.begin(), gaps.end()) ;
    
    // remove gaps
    int gaps_removed = 0 ;
    for (int i=0; i<gaps.size(); i++)
    {
        int temp = (gaps[i]%x==0)? gaps[i]/x -1 : gaps[i]/x ;
        
        if (temp<=k)
        {
            k -= temp ;
            gaps_removed++ ;
        }
        else
            break ;
    }
    
    cout << gaps.size()- gaps_removed +1 << endl ;
    
}
