https://www.acmicpc.net/problem/2230

리스트를 오름차순 정렬한 상태에서 투포인터를 진행한다.
처음 투포인터(left, right)는 인덱스 0에서 시작하고 숫자의 차이가 m보다 작으면 더 큰수에서 빼기 위해 right 포인터를 +1, m보다 크면 더 큰 값을 빼기 위해 left 포인터를 +1한다.
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
arr = [int(input()) for _ in range(n)]
arr.sort()
left, right = 0, 0
result = 2000000000
while right < n:
diff = arr[right] - arr[left]
if diff == m:
result = m
break
elif diff < m:
right += 1
else:
left += 1
result = min(diff, result)
print(result)