object Main extends App {
  val Array(n,c,k) = readLine.split(" ").map{_.toInt}
  val t = (1 to n).map{_ => readInt}.toArray.sorted
  
  var ans = 0
  var i = 0
  var count = 0
  var time = 0
  
  while (i < n) {
    val now = t(i)
    ans += 1
    
    while (i < n && count < c && t(i)-now <= k) {
      count += 1
      i += 1
    }
    
    count = 0
  }
  
  println(ans)
}