#include<bits/stdc++.h>
using namespace std;
const int N=25050;
int n,a[N],t;
int dp[N],ans,cs;
bool cmp(int x,int y)
{
return x>y;
}
int main()
{
scanf("%d",&t);
for(int i=1;i<=t;i++)
{
scanf("%d",&n);
int mid=n/2;
ans=n;
for(int j=1;j<=n;j++)
scanf("%d",&a[j]);
sort(a,a+n+1,cmp);
for(int j=1;j<=mid-1;j++)
cs+=a[j]%a[j+1];
for(int i=mid;i<=n;i++)
{
if(cs>=a[i])
ans--;
}
cout<<ans<<endl;}
return 0;}
大概想法就是降序排序并二分区间之后看左区间的余数和是否大于右边的