for _ in range(int(input())):
n = int(input())
x = list(map(int,input().split()))
y = list(map(int,input().split()))
t = []
for i in range(n):
t.append(y[i]-x[i])
t.sort()
teams = 0
l = 0
r = n-1
while l<r:
if t[r] + t[l] >=0:
teams += 1
r -= 1
l += 1
print(teams)
#include <bits/stdc++.h>
#include <math.h>
#include <string.h>
#include <iomanip>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
using namespace std;
#define pii pair<int, int>
#define rep(i, a, b) for (int i = a; i < b; i++)
#define rfor(i,a,b) for(int i=a; i>=b; i--)
#define in(a) int a; cin >> a;
#define ins(a) string a; cin >> a;
#define lin(a) long long a; cin>>a;
#define din(a) long double a; cin>>a;
#define out(a) cout<<a<<"\n";
#define arr(a,n) int a[n] = {}; rep(i,0,n) cin>>a[i];
#define ll long long
#define vec(v,n) vector<ll> v(n); rep(i,0,n) cin>>v[i];
#define all(a) a.begin(),a.end()
#define lite ios_base::sync_with_stdio(false); cin.tie(NULL);
#define ordered_set tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update>
#define ld long double
#define tc int t;cin>>t; while(t--)
#define mod 100000+7
void solve()
{
lin(n);
vec(x,n);
vec(y,n);
vector<int> ne,p,z;
rep(i,0,n){
int t=y[i]-x[i];
if(t>0)
p.push_back(t);
else if(t<0)
ne.push_back(t);
else
z.push_back(t);
}
sort(all(p));
sort(all(ne));
ll ans=0;
if(p.size()==0){
cout<<z.size()/2<<endl;
return;
}
if(ne.size()==0){
cout<<(p.size()+z.size())/2<<endl;
return;
}
// ans+=t;
int i=0,j=ne.size()-1;
int b=0;
while(i<p.size() && j>=0){
if(-1*ne[j]<=p[i]){
i++;
j--;
ans++;
}
else{
b++;
i++;
}
}
ans += ((b + (p.size() - i)+ z.size()) / 2);
cout<<ans<<endl;
return;
}
int main()
{
lite;
tc
solve();
return 0;
}
1450A - Avoid Trygub | 327A - Flipping Game |
411A - Password Check | 1520C - Not Adjacent Matrix |
1538B - Friends and Candies | 580A - Kefa and First Steps |
1038B - Non-Coprime Partition | 43A - Football |
50A - Domino piling | 479A - Expression |
1480A - Yet Another String Game | 1216C - White Sheet |
1648A - Weird Sum | 427A - Police Recruits |
535A - Tavas and Nafas | 581A - Vasya the Hipster |
1537B - Bad Boy | 1406B - Maximum Product |
507B - Amr and Pins | 379A - New Year Candles |
1154A - Restoring Three Numbers | 750A - New Year and Hurry |
705A - Hulk | 492B - Vanya and Lanterns |
1374C - Move Brackets | 1476A - K-divisible Sum |
1333A - Little Artem | 432D - Prefixes and Suffixes |
486A - Calculating Function | 1373B - 01 Game |