/*
TASK:minjumps
LANG:C++
*/
#include<iostream>
using namespace std;
int x,a,b,n,ejump=0,bigjump,smaljump,jumps=0;
int bigger(int a,int b)
{if(a>b){return a;}
else{return b;};
}
int smaller(int a,int b)
{if(a<b){return a;}
else{return b;};
}               
int main()
{
    cin>>a>>b>>n;
    if(a%2==0&&b%2==0&&n%2!=0){cout<<"-1";}
    else
    {
        smaljump=smaller(a,b);
        bigjump=bigger(a,b);
        if(n%bigjump==0){cout<<n/bigjump;}
        else if(n%smaljump==0){cout<<n/smaljump;}
        else
        {
            
            while(n!=0)
            {
            if(n>bigjump){jumps=jumps+n/bigjump;n=n%bigjump;}
            if(n%smaljump==0){jumps=jumps+n/smaljump;break;}
            else if(n%smaljump!=0){n=n+smaljump;};
            }
            cout<<jumps;            
            };
            }
            cout<<endl;
            }
            
            
            
