#include <bits/stdc++.h>
using namespace std;
#define int long long
typedef long long ll;

const int MAXN = 3e5+5;

int N, K, A[2*MAXN], last[MAXN];

signed main () {
  ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
  cin >> N >> K;
  int ans = K-1;
  for(int i=1; i<=N; i++){
      cin >> A[i];
      A[i+N] = A[i];
  }
  set<int> st;
  st.insert(A[1]);
  last[A[1]] = 1; 
  for(int i=1, j=1; i<=N; ){ // [i,j]
    if(*st.rbegin() - *st.begin() >= K){
        st.erase(A[i]);
        i++;
    }else{
        ans = min(ans, K-(int)st.size());
        j++;
        if(st.count(A[j])) {
            while(i <= last[A[j]]){
                st.erase(A[i]);
                i++;
            }
        }
        last[A[j]] = j;
        st.insert(A[j]);             
    }    
  }
  cout << ans;
}