#include <bits/stdc++.h>
using namespace std;
long long int N, M, K;
bool ok(long long int X) {
  long long int res = 0;
  for (int A = 1; A <= N; A++) {
    res += min(M, (X - 1) / A);
  }
  return res < K;
}
int main() {
  cin >> N >> M >> K;
  long long int low = 1, mid, high = (N * M), ans = 0;
  while (low <= high) {
    mid = (low + high) / 2;
    if (ok(mid)) {
      ans = mid;
      low = mid + 1;
    } else
      high = mid - 1;
  }
  cout << ans;
  return 0;
}
