
#include<bits/stdc++.h>
    using namespace std;
#define ll long long
        long long w,l,k;

long long pri(long long n) {
    long long cnt=0;
    for (int i=2;i*i<=n;i++) {

        while (n%i==0) {
            n/=i;
          cnt++;
        }

    }
        if (n>1)cnt++;
    return cnt;
}

void div(long long x,set<long long >&arr) {

    for (int i=1;i*i<=x;i++) {
        if (x%i==0) {
            if (i*i!=x) {

                arr.insert(i);
            arr.insert(x/i);
            }else {
                arr.insert(i) ;
            }
        }
    }




}



    int main() {
        //freopen("","r",stdin);
        ios_base::sync_with_stdio(false);
        cin.tie(NULL);

        cin>>w>>l>>k;

        set<long long>one,two;
        set<long long,greater<>>three;
    div(l,one);
    div(w,two);


    for (auto &i:one) {
        if (two.count(i)) {
            three.insert(i);

        }
    }

    long long ans=-1;
     for (auto &i:three) {
       // cout<<pri(i)<<endl;
         if (pri(i)==k) {
            ans=(l)/(i);
             ans*=w;
             ans/=i;
             break;
         }
     }

    cout<<ans<<endl;



    }



