#include #include #include #include #include using namespace std; #define M 100009 int a[M]; int b[M]; int ma[M]; int mb[M]; int used[M]; int dfs(int x) { used[x] = true; int temp = ma[x]; int bb = b[temp]; if(bb == x) return 1; if(used[bb]) return 0; else return dfs(bb)+1; } int main() { int n; int t; while(scanf("%d",&t) == 1) { while(scanf("%d",&n) == 1) { for(int i = 0;i < n;i++) { scanf("%d",&a[i]); ma[a[i]] = i; } for(int i = 0;i < n;i++) { scanf("%d",&b[i]); mb[b[i]] = i; } int ans = 0; memset(used,false,sizeof(used)); for(int i = 1;i <= n;i++) { ans += dfs(i); } printf("%d\n",ans); } } return 0; }