def foll(n,m,k):
if n<m :
n,m=m,n
left=1
right = n * m
while left<right:
mid = (left+right)//2
count=0
for i in range(1,n+1):
count+=min(mid//i,m)
if count>=k:
break
if count>=k:
right=mid
else:
left=mid+1
return left
n,m,k = map(int,input().split())
print(foll(n,m,k))

京公网安备 11010502036488号