T=int(input())
for i in range(T):
n,x=map(int,input().split(' '))
a=list(map(int,input().split(' ')))
a.sort()
cnt=0
o=0
for u in a[::-1]:
cnt+=1
if cnt*u>=x:
o+=1
cnt=0
print(o)
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
ll t;
cin>>t;
while(t--){
ll n, x;
cin>>n>>x;
ll a[n];
for(ll i = 0; i < n; i++)
{
cin>>a[i];
}
sort(a, a+n);
ll num = 0, cnt = 0;
for(long i = n-1; i >= 0; i--)
{
++cnt;
if(cnt * a[i] >= x){
++num;
cnt = 0;
}
}
cout<<num<<endl; }
}
1676G - White-Black Balanced Subtrees | 1716D - Chip Move |
1352F - Binary String Reconstruction | 1487B - Cat Cycle |
1679C - Rooks Defenders | 56A - Bar |
1694B - Paranoid String | 35A - Shell Game |
1684A - Digit Minimization | 43B - Letter |
1017A - The Rank | 1698B - Rising Sand |
235A - LCM Challenge | 1075B - Taxi drivers and Lyft |
1562A - The Miracle and the Sleeper | 1216A - Prefixes |
1490C - Sum of Cubes | 868A - Bark to Unlock |
873B - Balanced Substring | 1401D - Maximum Distributed Tree |
1716C - Robot in a Hallway | 1688B - Patchouli's Magical Talisman |
99A - Help Far Away Kingdom | 622B - The Time |
1688C - Manipulating History | 1169D - Good Triple |
1675B - Make It Increasing | 588A - Duff and Meat |
1541B - Pleasant Pairs | 1626B - Minor Reduction |