#include <iostream>
using namespace std;
#define N_MAX 100
int F[N_MAX][10]={0};
int P[N_MAX][11]={0};

int main(){
  int N,bits,i,k,j;
  cin >> N;
  for(i=0;i<N;i++){
    for(k=0;k<10;k++){
      cin >> F[i][k];
    }
  }
  for(i=0;i<N;i++){
    for(k=0;k<11;k++){
      cin >> P[i][k];
    }
  }
  long int sum=0,Pmax=-(1<<30);
  for(i=1;i<(1<<10);i++){
    sum=0;
    for(k=0;k<N;k++){
	  int cnt=0;
      for(j=0;j<10;j++){
        if(i & 1<<j)cnt+=F[k][j]; 
      }
      sum+=P[k][cnt];
    }
    Pmax=max(Pmax,sum);
  }
  cout << Pmax << endl;
  return 0;
}