#include <bits/stdc++.h>
using namespace std;
struct node {
  int bir, iki;
};
int comp(void const *q, void const *w) {
  node q1 = *(node *)q;
  node w1 = *(node *)w;
  return q1.bir - w1.bir;
}
int n;
int a[300000];
int b[300000];
int v[300000];
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  for (int i = 0; i < n; i++) {
    scanf("%d", &b[i]);
    v[b[i]] = i;
  }
  int v1 = 0;
  for (int i = 0; i < n; i++) {
    if (v[a[i]] < v1) {
      printf("%d", n - i);
      return 0;
    }
    if (v[a[i]] > v1) v1 = v[a[i]];
  }
  printf("0");
  return 0;
}
