#include <bits/stdc++.h>   using namespace std;   int n, m, k;   string s;   long long ans;   bool flag;   struct A {     int id, p, s;   };   bool comp(A a, A b) {     if (a.p > b.p) return true;     return false;   }   void solve() {     cin >> n >> m >> k;     vector<int> p(n);     for (auto i = 0; i < n; i++) cin >> p[i];     ;     vector<int> s(n);     for (auto i = 0; i < n; i++) cin >> s[i];     ;     vector<A> v(n);     for (auto i = 0; i < n; i++) {       v[i].id = i + 1;       v[i].s = s[i];       v[i].p = p[i];     }     sort(v.begin(), v.end(), comp);     unordered_set<int> school;     unordered_set<int> kid;     for (auto i = 0; i < n; i++) {       if (school.find(v[i].s) == school.end()) {         school.insert(v[i].s);         kid.insert(v[i].id);       }       int mm = school.size();       if (mm == m) break;     }     vector<int> K(k);     for (auto i = 0; i < k; i++) cin >> K[i];     ;     int count = 0;     for (auto i = 0; i < k; i++) {       if (kid.find(K[i]) == kid.end()) {         count++;       }     }     cout << count;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     int t = 1;     while (t--) {       solve();     }     return 0;   }   