#include using namespace std; bool kadomatu(int a,int b,int c){ if(b>a && b>c && a!=b && b!=c && c!=a){ return true; } else if(b=0 && a==c){ a-=d; x+=1; } int g=a; if(a>b){ int e=a-b; int f=e/d+1; if(a-d*f>0){ g=a-d*f; x+=f; } } int h=c; if(c>b){ int e=c-b; int f=e/d+1; if(c-d*f>0){ h=c-d*f; x+=f; } } if(kadomatu(g,b,h)){ ret=x; } } return ret; } int low(int a,int b,int c,int d){ int ret=-1; if(kadomatu(a,b,c)){ ret=0; } else { int x=0; if(a-d>=0 && a==c){ a-=d; x+=1; } int e=a; if(c0){ h=b-d*g; x+=g; } if(kadomatu(a,h,c)){ ret=x; } } return ret; } int main(){ int d=0;cin>>d; int a=0,b=0,c=0;cin>>a>>b>>c; int ans=-1; if(d==0){ if(kadomatu(a,b,c)){ ans=0; } } else { int h=high(a,b,c,d); int l=low(a,b,c,d); if(h==-1){ ans=l; } else if(l==-1){ ans=h; } else { if(h<=l){ ans=h; } else if(l<=h){ ans=l; } } } cout<