#include<bits/stdc++.h>
using namespace std;

const int mn=15;
int a[mn][mn],s[mn],c[mn],b[mn],ans=2e9;
int n,m,k;

void dfs(int x)
{
	if(x==n+1) {
		int sum=0;
		for(int i=1;i<=m;++i) s[i]=0;
		for(int i=1;i<=n;++i) if(b[i]) {
			sum+=c[i];
			for(int j=1;j<=m;++j) s[j]+=a[i][j];
		}
		for(int i=1;i<=m;++i) if(s[i]<k) return ;
		ans=min(ans,sum);
		return ;
	}
	b[x]=0;
	dfs(x+1);
	b[x]=1;
	dfs(x+1);
}

int main()
{
	scanf("%d%d%d",&n,&m,&k);
	for(int i=1;i<=n;++i) {
		scanf("%d",c+i);
		for(int j=1;j<=m;++j) scanf("%d",&a[i][j]);
	}
	dfs(1);
	if(ans==(int)2e9) puts("-1");
	else cout<<ans;
}