#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 100;
const long long int INF = 1e18;
int N;
int F[MAX_N][10];
int P[MAX_N][10];
void input() {
  cin >> N;
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < 10; j++) {
      cin >> F[i][j];
    }
  }
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < 11; j++) {
      cin >> P[i][j];
    }
  }
}
int main() {
  input();
  long long int res = -INF;
  for (int i = 1; i < (1 << 10); i++) {
    long long int sum = 0;
    for (int j = 0; j < N; j++) {
      int cnt = 0;
      for (int k = 0; k < 10; k++) {
        if (((i >> k) & 1) && F[j][k]) {
          cnt++;
        }
      }
      sum += P[j][cnt];
    }
    res = max(res, sum);
  }
  cout << res << endl;
  return 0;
}
