#include <bits/stdc++.h>
using namespace std;
long long int aA[300001], aB[300001], aC[300001], aD[300001], aE[300001];
vector<long long int> vA, vB;
long long int T, n, i, j, k, a, b, c, m, u, v, p, t, d, x, y, l, r, s, e, q;
string st[300001];
map<string, long long int> ans;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  cin >> n >> k >> m;
  for (i = 1; i <= n; i++) cin >> st[i];
  for (i = 1; i <= n; i++) cin >> aA[i];
  for (i = 1; i <= k; i++) {
    cin >> x;
    y = INT_MAX;
    vector<string> tmp;
    for (j = 0; j < x; j++) {
      cin >> a;
      y = min(y, aA[a]);
      tmp.push_back(st[a]);
    }
    for (auto x : tmp) {
      ans[x] = y;
    }
  }
  for (i = 1; i <= m; i++) cin >> st[i];
  a = 0;
  for (i = 1; i <= m; i++) {
    a += ans[st[i]];
  }
  cout << a << endl;
  return 0;
}
