#include <bits/stdc++.h> using namespace std; int v[2000005]; int check(int n,int k,int cate) { int i; if(cate>=n) { return 1; } int x,c,d; x=n-cate; if(x>2*cate) { return 0; } c=max(x-cate, 0); d=max(cate-c, 0); if (d > cate) { return 0; } if (c + d > cate) { return 0; } if (c > cate) { return 0; } for(i=1;i<=c;i++) { if(v[i]+v[2*c-i+1]>=k) { return 0; } } for(i=2*c+1;i<=2*c+d;i++) { if(v[i]>=k) { return 0; } } return 1; } void solve() { string s; int n,i,j,mij,k; cin>>n>>k; for(i=1;i<=n;i++) { cin>>v[i]; } sort(v+1,v+n+1); int st=1,dr=n; while(st<=dr) { int mij=(st+dr)/2; if(check(n,k,mij)==1) { dr=mij-1; } else { st=mij+1; } } cout<<dr<<'\n'; } int main() { // freopen("1.in", "r", stdin); cin.tie(NULL); ios::sync_with_stdio(false); int t; cin >> t; while (t--) solve(); return 0; }