#include <bits/stdc++.h>
using namespace std;
long long a[100010];
long long b[100010];
bool vis[1000010];
int main() {
  int n, m;
  long long sum = 0;
  long long ans = 0;
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; i++) {
    scanf("%I64d", &a[i]);
    sum += a[i];
  }
  for (int i = 0; i < m; i++) scanf("%I64d", &b[i]);
  for (int i = 1; i < n; i++) ans += (a[i] * a[i - 1]);
  ans += (a[0] * a[n - 1]);
  for (int i = 0; i < m; i++) {
    long long mi = b[i] - 1;
    long long mn = a[mi];
    if (mi == 0) {
      if (!vis[1]) mn += a[1];
      if (!vis[n - 1]) mn += a[n - 1];
    } else if (mi == n - 1) {
      if (!vis[n - 2]) mn += a[n - 2];
      if (!vis[0]) mn += a[0];
    } else {
      if (!vis[mi + 1]) mn += a[mi + 1];
      if (!vis[mi - 1]) mn += a[mi - 1];
    }
    ans += (sum - mn) * a[mi];
    sum -= a[mi];
    vis[mi] = 1;
  }
  cout << ans;
  return 0;
}
