#include<bits/stdc++.h>
#define ll long long
using namespace std;
int f[110][15],p[110][15];
int sum=-INT_MAX;
int n;
void dfs(string s){
	if(s.size()==10){
		if(s.find('1')==string::npos)return ;
		int cnt=0;
		for(int i=0;i<n;i++){
			int ans=0;
			for(int j=0;j<10;j++){
				if(f[i][j]&&s[j]=='1'){
					ans++;
				}
			}
			cnt+=p[i][ans];
		}
		sum=max(cnt,sum);
		return;
	}
	dfs(s+'0');
	dfs(s+'1');
}
int main()
{
	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];
		}
	}
	dfs("");
	cout<<sum<<endl;
	return 0;
}