N,M,K=map(int,input().split()) A=[list(map(int,input().split())) for i in range(N)] dp=[[False]*(K+1) for i in range(N+1)] dp[0][K]=True for i in range(N): for j in range(M): for k in range(K+1): if A[i][j]<=k: dp[i+1][k-A[i][j]]|=dp[i][k] ans=K for k in range(K+1): if dp[N][k]: ans=min(ans,k) if ans==K:ans=-1 print(ans)