#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void) {
  int n, m, x, i, j, c, ryokin = 0;
  int booklist[12][13];  // ほんの数,値段
  int sum[12] = {};
  int sub[12] = {};
  scanf("%d %d %d", &n, &m, &x);
  for (i = 0; i < n; i++) {
    scanf("%d", &booklist[i][0]);
    ryokin += booklist[i][0];
    for (j = 0; j < m; j++) {
      scanf("%d", &booklist[i][j + 1]);
      sum[j] += booklist[i][j + 1];
    }
  }

  for (i = 0; i < m; i++) {
    if (sum[i] < x) {
      printf("-1\n");
      exit(0);
    }
  }  //足りてたら一個ずつ調べていこう

  for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) {
      sub[j] = sum[j] - booklist[i][j + 1];  //全部の数字を更新
    }
    if (sub[i] < x) {  //理解度が低かったら駄目だからそのまま
      continue;
    } else {  //理解度が足りてたら引く
      for (j = 1; j < m; j++) {
        sum[j] = sum[j] - booklist[i][j + 1];  //全部の数字を更新
      }
     // printf("%d\n", i);
      ryokin -= booklist[i][0];
    }
  }
  printf("%d\n", ryokin);

  return 0;
}