#include <bits/stdc++.h>
using namespace std;
int n, a[100005], mil = -1000000000, mir = -1000000000, mal = 1000000000,
                  mar = 1000000000, mini, maxi;
string b;
int main() {
  ios::sync_with_stdio(false);
  cin >> n;
  for (int i = 0; i < n; i++) cin >> a[i];
  cin >> b;
  for (int i = 4; i < n; i++) {
    if (b[i] == '1' && b[i - 1] == '0' && b[i - 2] == '0' && b[i - 3] == '0' &&
        b[i - 4] == '0') {
      maxi = -1000000000;
      for (int j = 0; j < 5; j++) {
        maxi = max(maxi, a[i - j]);
      }
      mil = max(mil, maxi + 1);
    } else if (b[i] == '0' && b[i - 1] == '1' && b[i - 2] == '1' &&
               b[i - 3] == '1' && b[i - 4] == '1') {
      mini = 1000000000;
      for (int j = 0; j < 5; j++) {
        mini = min(mini, a[i - j]);
      }
      mar = min(mar, mini - 1);
    } else if (b[i] == '0' && b[i - 1] == '0' && b[i - 2] == '0' &&
               b[i - 3] == '0' && b[i - 4] == '0') {
      maxi = -1000000000;
      for (int j = 0; j < 5; j++) {
        maxi = max(maxi, a[i - j]);
      }
      mal = min(mal, maxi);
    } else if (b[i] == '1' && b[i - 1] == '1' && b[i - 2] == '1' &&
               b[i - 3] == '1' && b[i - 4] == '1') {
      mini = 1000000000;
      for (int j = 0; j < 5; j++) {
        mini = min(mini, a[i - j]);
      }
      mir = max(mir, mini);
    }
  }
  cout << mil << ' ' << max(mir, mil);
  return 0;
}
