from atcoder.segtree import SegTree def main(): n = int(input()) P = list(map(lambda x: int(x)-1, input().split())) Q = list(map(lambda x: int(x)-1, input().split())) st = SegTree(lambda a, b: max(a, b), 0, [0]*2*n*n) #st1 = SegTree(lambda a, b: max(a, b), 0, [0]*n*n) ans = 0 N = n*n for pi in range(n): st_ = SegTree(lambda a, b: max(a, b), 0, [0]*2*n) for qi in range(n): p, q = P[pi], Q[qi] a = st.prod(2*qi*n+p, 2*qi*n+n+p)+1 ans = max(ans, a) st_.set(q, a) st_.set(n+q, a) x, y = st_.prod(q+1, n), st_.prod(n, n+q) #print(p, q, x, y, a, "here", *[st1_.get(i) for i in range(n)]) st.set(2*qi*n+p, x) st.set(2*qi*n+n+p, y) return ans for _ in range(int(input())): print(main())