#include #define rep(i,n) for(int i=0; i<(int)(n); i++) using namespace std; using LL = long long; using P = pair; const int INF=1e9; const int Max_N=2e5; const int Max_A=1e9; int main(){ int N, D; cin >> N >> D; assert(N>=1 && N<=Max_N); assert(D>=1 && D<=Max_A); vector

A(N); rep(i,N){ int a; cin >> a; assert(a>=1 && a<=Max_A); A[i]={a,i}; } sort(A.begin(),A.end()); vector ans(N); rep(i,N){ int a=A[i].first; int res=upper_bound(A.begin(),A.end(),P(a-D,INF))-A.begin(); ans[A[i].second]=res; } rep(i,N) cout << ans[i] << endl; return 0; }