#include <bits/stdc++.h>
using namespace std;
int n, m, k, a[33][33], vis[33];
int dfs(int u, int sum, int lim) {
  if (sum > lim) return 0;
  if (u > n) return 1;
  int ans = dfs(u + 1, sum, lim);
  for (int v = 1; v <= n && ans < k; v++)
    if (!vis[v] && a[u][v])
      vis[v] = 1, ans += dfs(u + 1, sum + a[u][v], lim), vis[v] = 0;
  return ans;
}
int main() {
  cin >> n >> m >> k;
  while (m--) {
    int x, y, z;
    cin >> x >> y >> z;
    a[x][y] = z;
  }
  int l = 0, r = 20000, ans = 0;
  while (l <= r) {
    m = (l + r) / 2;
    if (dfs(1, 0, m) >= k)
      ans = m, r = m - 1;
    else
      l = m + 1;
  }
  cout << ans << '\n';
}
