#include <bits/stdc++.h>
using namespace std;
using ll=long long;
int main(){
  ll N,M,X,ans=1e9; cin>>N>>M>>X;
  vector<vector<ll>> C(13,vector<ll>(13,0));
  vector<ll> work;
  for(ll i=0; i<N; i++) for(ll j=0; j<=M; j++) cin>>C[i][j];
  for(ll i=1; i<(1<<N); i++){
    work.assign(13,0);
    ll cnt=0;
    while(cnt<N){
      if(1&(i>>cnt)) for(ll j=0; j<=M; j++) work[j]+=C[cnt][j];
      cnt++;
    }
    //check
      for(ll j=1; j<=M; j++){
      if(work[j]<X) break;
      if(j==M) ans=min(work[0],ans);
    }
  }
  if(ans==1e9) ans=-1;
  cout<<ans<<endl;
}