#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f3f3f3f3f;
long long power(long long a, long long b) {
  long long res = 1;
  while (b != 0) {
    if (b & 1) {
      res *= a;
    }
    a = (a * a);
    b = (b / 2);
  }
  return res;
}
long long mod = 1e8;
long long series(long long x) { return x * (x + 1) / 2; }
long long f(long long x, int n, int m) {
  long long res = 0;
  --x;
  for (int i = 1; i <= n; ++i) res += min((long long)m, x / i);
  return res;
}
int main() {
  long long i, j, k, l, n, m, t;
  t = 1;
  while (t--) {
    cin >> n >> m >> k;
    long long l = 1, r = 1ll * n * m + 1;
    while (l < r) {
      long long x = (l + r) >> 1;
      if (f(x, n, m) < k)
        l = x + 1;
      else
        r = x;
    }
    cout << l - 1 << endl;
  }
  return 0;
}
