# import logging
import logging.config
import sys

logger = logging.getLogger(__name__)


def main():
	# logger.info('=' * 40)
	# logger.info('STARTED')

	n, d = (int(x) for x in sys.stdin.readline().split())
	input_array = [int(x) for x in sys.stdin.readline().split()]
	input_array.sort()

	# "Диамтер мультимножества, состоящего из одной точки, равен 0."
	# следовательно, тогда и удалять нечего
	if n == 1:
		print('0')
		return

	# если никакая пара точек не так близко, как надо то придётся отбрасывать n-1, чтобы оставить просто 1 точку
	result = n - 1
	# для каждой пары точек считаем, какой они дают диаметр, а по индексам их можно рассчитать, сколько точек отброшено
	for i in range(0, n - 1):
		for j in range(i + 1, n):
			if (input_array[j] - input_array[i] <= d):
				if (i + (n - 1 - j) < result):
					result = i + (n - 1 - j)

	print('{}'.format(result))


if __name__ == '__main__':
	main()
