#include <bits/stdc++.h>
using namespace std;
void fun(long long int a, long long int b, long long int u,
         vector<long long int> &t) {
  long long int i, j, k, n;
  for (i = 1; i < b; i++) {
    if (u) t[i]++;
  }
  u = 1 - u;
  i = b;
  while (i < 1000) {
    for (j = 0; j < a; j++) {
      if (i >= 1000) return;
      if (u) t[i]++;
      i++;
    }
    u = 1 - u;
  }
}
void solve() {
  long long int i, j, k, n;
  cin >> n;
  string s;
  cin >> s;
  vector<pair<long long int, long long int> > v(n);
  vector<long long int> t(1000, 0);
  for (i = 0; i < n; i++) {
    if (s[i] == '1') t[0]++;
  }
  for (i = 0; i < n; i++) {
    cin >> v[i].first >> v[i].second;
  }
  for (i = 0; i < n; i++) {
    fun(v[i].first, v[i].second, s[i] - '0', t);
  }
  long long int mx = t[0];
  for (i = 1; i < (int)t.size(); i++) mx = max(mx, t[i]);
  cout << mx;
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long int t = 1;
  while (t--) solve();
  return 0;
}
