def count_le(x): # 统计乘法表中小于等于x的个数 # 对于每一行,要有j * i ≤ x ⇒ j ≤ x // i,同时最多有m列 return sum(min(m, x // i) for i in range(1, n + 1)) def bi_search(n, m, k): left, right = 1, n * m while left < right: mid = (left + right) // 2 if count_le(mid) < k: left = mid + 1 else: right = mid return right # 读取输入 n, m, k = map(int, input().split()) print(bi_search(n, m, k))