#include <bits/stdc++.h>
using namespace std;
void IO() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
}
int n, m;
int t[101];
int req[111];
map<int, int> C;
int have;
void del(int k) {
  if (C[k] == req[k]) have--;
  C[k]--;
  if (C[k] == req[k]) have++;
}
void add(int k) {
  if (C[k] == req[k]) have--;
  C[k]++;
  if (C[k] == req[k]) have++;
}
void pre(int k) {
  for (int i = 0; i < (k); i++) add(t[i]);
}
int main() {
  IO();
  cin >> n >> m;
  for (int i = 1; i < (n + 1); i++) cin >> t[i];
  int q = m;
  for (int i = 1; i < (m + 1); i++) {
    int p;
    cin >> p;
    req[i] = p;
    if (p == 0) q--;
  }
  int i = 1;
  while (i <= n) {
    C.clear();
    have = 0;
    int r = i;
    while (r <= n) {
      add(t[r++]);
      if (have == q) {
        cout << "YES";
        return 0;
      }
    }
    i++;
  }
  cout << "NO";
}
