/*
TASK:minjumps
LANG:c++
*/
#include<iostream>
#include<cmath>
using namespace std;
int main(){
    int a,b,n,br=0;
    cin >> a >> b >> n;
    n=abs(n);
    int na=0,nb=0,mina=100000,minb=100000;
    if(a>b) swap(a,b);
    bool a1=false,b1=false;
    if (n!=0){
              if((n%a)!=0){
              while(na>=-10000 && nb>=-10000 && (a1==false || b1==false)){
                    if((n-na)%b==0){a1=true;mina=((n-na)/b)+((abs(na))/a);}
                    if((n-nb)%a==0){b1=true;minb=((n-nb)/a)+((abs(nb))/b);}
                    if(a1==false) na-=a;
                    if(b1==false) nb-=b;}} else mina=n/a;
                    if(n-na<-10000) mina=100000;
                    if(n-nb<-10000) minb=100000;
                    int minall=min(mina,minb);
                    if(minall!=100000){ cout << min(mina,minb) << endl;}
                    else {cout << -1 << endl;}
                    } else {cout << 0 << endl;}
    return 0;
}
                    
