#include using namespace std; typedef long long ll; typedef long double ld; #define rep(i, n) for (ll i = 0; i < n; i++) #define FOR(i, a, b) for (ll i = a; i < b; i++) #define len(v) ll(v.size()) #define fi first #define se second template void cout_vec(const vector &vec){ for(auto itr:vec) cout< void cout_vec2(const vector> &vec){ rep(i,vec.size()){ rep(j,vec[i].size()){ cout< P; const ll mod=1e9+7; const ll inf=1e15; int main(){ cin.tie(0); ios::sync_with_stdio(false); int n,m,k; cin>>n>>m>>k; vector> a(n+1,vector(m+1)); rep(i,n)rep(j,m) cin>>a[i+1][j+1]; vector> dp(n+1,vector(k+10,false)); dp[0][k]=true; rep(i,n)rep(j,k+1){ FOR(l,1,m+1){ if(j+a[i+1][l]<=k) dp[i+1][j]=dp[i+1][j]||dp[i][j+a[i+1][l]]; } } FOR(i,1,n+1){ bool flag=false; rep(j,k+1){ if(dp[i][j]){ flag=true; break; } } if(!flag){ cout<<-1<