#include <iostream>
using namespace std;

int main() {
	int N;
	int F[100][10];
	int P[100][11];
	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];
		}
	}
	long long ans = -(1LL << 60);
	for(int s=1; s<(1<<10); ++s) {
		int C[100] = {0};
		for(int i=0; i<N; ++i) {
			for(int j=0; j<10; ++j) {
				if((s >> j) & F[i][j]) ++C[i];
			}
		}
		long long tmp = 0;
		for(int i=0; i<N; ++i) {
			tmp += P[i][C[i]];
		}
		ans = max(ans,tmp);
	}
	cout << ans << endl;
}