#include <bits/stdc++.h>
using namespace std;
const int Maxn = 1e5 + 10;
int n, m, k;
bool cmp(int c, int d) { return c > d; }
struct node {
  int id, cnt;
} b[150];
vector<int> p[150];
int ans, t, num, a[150];
int main() {
  cin >> n >> m >> k;
  for (int i = 1; i <= n; i++) {
    cin >> b[i].id;
  }
  for (int i = 1; i <= n; i++) {
    cin >> t;
    p[t].push_back(b[i].id);
    b[i].cnt = t;
  }
  for (int i = 1; i <= m; i++) sort(p[i].begin(), p[i].end(), cmp);
  for (int i = 1; i <= k; i++) {
    cin >> num;
    if (b[num].id != p[b[num].cnt][0]) ans++;
  }
  cout << ans << endl;
}
