//#include //#include //#include //#include //#include //#include //#include //#include //#include //#include //#include //#include //#include //typedef long long ll; //ll mod = 998244353; //ll quick(ll a,ll n) //{ // ll re=1; // while(n) // { // if(n&1) //判断n的二进制最后一位是不是1,或者说判断n是不是奇数 // { // re=(re*a)%mod; // } // n>>=1; //除掉n二进制的最后一位,相当于/2 // a=(a*a)%mod; // } // return re%mod; //} //using namespace std; //int main(){ // int T; // cin >> T; // while(T--){ // ll a,b,k; // cin >> a >> b >> k; // ll x = quick(2,k/2) % mod ; // if(k%2==0){ // cout << (x * a) % mod << " " << (x * b) % mod << endl; // } // else{ // cout << (x * ((a+b)%mod)) % mod << " " << (x * ((a-b)%mod)) % mod << endl; // } // } // // return 0; //} #include #include #include #include #include #include #include #include #include #include #include #include #include typedef long long ll; using namespace std; int a[100005]; int main(){ int T; cin >> T; while(T--){ int n,k; cin >> n >> k; for (int i=1;i<=n;i++){ cin >> a[i]; } sort(a+1, a+1+n); mapmp; int ans = 0; int cnt = -1000000000; for (int i=1;i<=n;i++){ for (int j=max(a[i]-k,cnt+1);j<=a[i]+k;j++){ if(mp[j]==0){ cnt = j; mp[j]++; ans++; break; } } } cout << ans << endl; } return 0; }