#include <bits/stdc++.h>
struct IO {
  IO(FILE *in = stdin) : in(in) {}
  int next_char() {
    if (position == length) {
      position = 0, length = fread(buffer, 1, LENGTH, in);
    }
    if (position == length) {
      eof = true;
      return -1;
    }
    return buffer[position++];
  }
  int next_uint() {
    int c = next_char(), x = 0;
    while (c <= 32) {
      c = next_char();
    }
    for (; '0' <= c && c <= '9'; c = next_char()) {
      x = x * 10 + c - '0';
    }
    return x;
  }
  int next_int() {
    int s = 1, c = next_char(), x = 0;
    while (c <= 32) {
      c = next_char();
    }
    if (c == '-') {
      s = -1, c = next_char();
    }
    for (; '0' <= c && c <= '9'; c = next_char()) {
      x = x * 10 + c - '0';
    }
    return x * s;
  }
  void next_string(char *s) {
    int c = next_char();
    while (c <= 32) {
      c = next_char();
    }
    for (; c > 32; c = next_char()) {
      *s++ = c;
    }
    *s = 0;
  }

 private:
  static const int LENGTH = 1 << 16;
  char buffer[LENGTH];
  int position = 0, length = 0;
  bool eof = false;
  FILE *in;
};
const int N = 500000;
const auto MAX = 1000000000LL * N + 1;
int n, m, a[N], b[N], cost[N], rank[N + 1];
long long dp[N + 1];
int main() {
  IO io{stdin};
  n = io.next_uint();
  for (int i = 0; i < n; ++i) {
    a[i] = io.next_uint() - 1;
  }
  for (int i = 0; i < n; ++i) {
    cost[i] = io.next_int();
  }
  m = io.next_uint();
  for (int i = 0; i < m; ++i) {
    rank[b[i] = io.next_uint() - 1] = i + 1;
  }
  rank[n] = m + 1;
  for (int i = n; i--;) {
    rank[i] = rank[i] ? rank[i] : rank[i + 1];
  }
  dp[0] = -2 * MAX, dp[m] = 2 * MAX;
  for (int i = 0; i < n; ++i) {
    int j = rank[a[i]] - 1;
    if (j < m && a[i] == b[j] && dp[j] < std::min(cost[i], 0)) {
      dp[j + 1] += dp[j];
      dp[j] = cost[i];
      if (cost[i] <= 0) {
        dp[m] += cost[i];
        dp[j + 1] -= cost[i];
      }
    } else {
      dp[cost[i] > 0 ? j : m] += cost[i];
    }
  }
  if (dp[m] < MAX) {
    printf("YES\n%lld\n", dp[m]);
  } else {
    puts("NO");
  }
}
