#include <bits/stdc++.h>
using namespace std;
const double pi = 3.14159265359;
const long long int Maxi = 1e18;
long long cr[100000];
vector<long long> v[10005];
long long b[100005];
long long a[100005] = {0};
long long k = 0;
void dfs(long long x) {
  if (a[x] != b[x]) k++;
  a[x] = b[x];
  for (long long i = 0; i < v[x].size(); i++) {
    a[v[x][i]] = b[x];
  }
  for (long long i = 0; i < v[x].size(); i++) {
    dfs(v[x][i]);
  }
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(NULL);
  cout.tie(NULL);
  long long n, m, i, j, l, p = 0, s = 0, t = 1, x, y, z, r, c;
  cin >> n;
  for (i = 2; i <= n; i++) {
    cin >> x;
    v[x].push_back(i);
  }
  for (i = 1; i <= n; i++) cin >> b[i];
  dfs(1);
  for (i = 1; i <= n; i++) {
    if (a[i] != b[i]) k++;
  }
  cout << k;
  return 0;
}
