// @rakibul-islam
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
const ll oo = 1e17;
const ll mod = 1e9 + 7;
struct Fenwick{
int n;
vector<long long> bit;
Fenwick(int _n){
n = _n + 1;
bit.assign(n, 0);
}
void update(int idx, ll val){
for(idx; idx > 0; idx -= idx & (-idx)){
bit[idx] = max(bit[idx], val);
}
}
long long get(int idx){
long long res = 0;
while(idx < n){
res = max(res, bit[idx]);
idx += idx & (-idx);
}
return res;
}
};
void solve() {
int n; cin >> n;
vector<ll> a(n), b(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
for (int i = 0; i < n; i++) {
cin >> b[i];
}
Fenwick bit(n + 5);
vector<ll> dp(n);
ll res = 0;
for (int i = n - 1; i >= 0; i--) {
int cur = a[i];
ll qr = bit.get(cur + 1);
dp[i] = b[i] + qr;
bit.update(cur, dp[i]);
res = max(res, dp[i]);
}
for (int i = n - 1; i >= 0; i--) {
if (dp[i] == res) {
cout << (n - i) << "\n";
return;
}
}
}
int main() {
cin.tie(0)->sync_with_stdio(0);
int t = 1; cin >> t;
for (int test = 1; test <= t; test++) {
solve();
}
return 0;
}