#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int T[100005] ;
int com ( const void* a, const void*b ) {
return *(int*)a - *(int*)b ;
}
int main () {
int N, C, K, result, i, c;
scanf ( "%d %d %d", &N, &C, &K ) ;
for ( i = 0 ; i < N ; i++ ) {
scanf ( "%d", &T[i] ) ;
}
qsort ( T, N, sizeof (int), com ) ;
for ( i = 0 , result = 1, c = 1 ; i < N ; i++ ) {
if ( T[i] - T[i+1] <= C && c < C ) {
c++ ;
}
else {
c = 1 ;
result++ ;
}
}
printf ( "%d", result ) ;
}