#include<bits/stdc++.h>
using namespace std;
long long n,m,k;
bool judge(long long x){
if(x<2){
return false;
}
for(long long i=2;i<=sqrt(x);i++){
if(x%i==0){
return false;
}
}
return true;
}
int main(){
cin>>n>>m>>k;
long long l=1,r=n*m;
while(l<=r){
long long mid=(l+r)/2;
long long sum=0;
for(long long i=1;i<=n;i++){
sum+=min(mid/i,m);
}
if(sum==k&&(mid<=n||mid<=m||judge(mid))){
cout<<mid;
return 0;
}else{
if(sum<k){
l=mid+1;
}else{
r=mid-1;
}
}
}
cout<<l;
return 0;
}