#include <bits/stdc++.h>
using namespace std;
int main() {
  cin.sync_with_stdio(false);
  cout.sync_with_stdio(false);
  cin.tie(NULL);
  long long t;
  t = 1;
  while (t--) {
    long long n;
    cin >> n;
    long long a[n];
    for (long i = 0; i < n; i++) {
      cin >> a[i];
    }
    string s;
    cin >> s;
    int i = 0, j = 0;
    while (i < n - 1) {
      if (s[i] == '1') {
        while (s[i] == '1') {
          i++;
        }
        sort(a + j, a + i + 1);
        j = i;
      } else {
        i++;
        j++;
      }
    }
    if (j < n - 1) {
      sort(a + j, a + i + 1);
    }
    int f = 0;
    for (int i = 1; i < n; i++) {
      if (a[i] < a[i - 1]) {
        f = 1;
        break;
      }
    }
    if (f) {
      cout << "NO";
    } else {
      cout << "YES";
    }
  }
  return 0;
}
