#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k;
  cin >> n >> k;
  vector<int> v(n), w(k);
  int lst = -1;
  for (int i = 0; i < n; i++) {
    cin >> v[i];
    if (v[i] != 0) {
      if (lst != -1) {
        if (v[i] <= lst) {
          puts("Yes");
          return 0;
        }
      }
      lst = v[i];
    }
  }
  for (int i = 0; i < k; i++) {
    cin >> w[i];
  }
  if (k > 1) {
    puts("Yes");
    return 0;
  }
  sort(w.rbegin(), w.rend());
  int ind = 0;
  for (int i = 0; i < n; i++) {
    if (v[i] == 0) v[i] = w[ind++];
  }
  lst = -1;
  for (int i = 0; i < n; i++) {
    if (lst != -1) {
      if (v[i] <= lst) {
        puts("Yes");
        return 0;
      }
    }
    lst = v[i];
  }
  puts("No");
  return 0;
}
