#include <bits/stdc++.h>
using namespace std;
long long n, m, k;
long long lower(long long x) {
  long long ret = 0;
  for (long long i = 1; i <= n; i++) ret += min(m, x / i);
  return ret;
}
int main() {
  scanf("%I64d%I64d%I64d", &n, &m, &k);
  long long l = 1, r = n * m + 1;
  while (l < r) {
    long long mid = (l + r) / 2;
    long long now = lower(mid);
    if (now >= k)
      r = mid;
    else
      l = mid + 1;
  }
  printf("%I64d", l);
}
