#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using str = string;
using pii = pair<int, int>;
using pll = pair<ll, ll>;
using tiii = tuple<int, int, int>;
ll n, m, k;
bool check(ll g) {
  ll cnt = 0;
  for (ll i = 1; i <= n; i++) {
    cnt += min(ll(m), g / i);
  }
  if (cnt >= k)
    return true;
  else
    return false;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cin >> n >> m >> k;
  ll lx = 1, rx = n * m;
  while (lx < rx) {
    ll g = lx + (rx - lx) / 2;
    if (check(g))
      rx = g;
    else
      lx = g + 1;
  }
  cout << lx << '\n';
  return 0;
}
