#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#include using namespace std; #define HI printf("HI\n") #define sf scanf #define pf printf #define sf1(a) scanf("%d",&a) #define sf2(a,b) scanf("%d %d",&a,&b) #define sf3(a,b,c) scanf("%d %d %d",&a,&b,&c) #define sf4(a,b,c,d) scanf("%d %d %d %d",&a,&b,&c,&d) #define sf1ll(a) scanf("%lld",&a) #define sf2ll(a,b) scanf("%lld %lld",&a,&b) #define sf3ll(a,b,c) scanf("%lld %lld %lld",&a,&b,&c) #define sf4ll(a,b,c,d) scanf("%lld %lld %lld %lld",&a,&b,&c,&d) #define forln(i,a,n) for(int i=a ; in ; i--) #define fore0(i,a,n) for(int i=a ; i>=n ; i--) #define pb push_back #define ppb pop_back #define ppf push_front #define popf pop_front #define ll long long int #define ui unsigned int #define ull unsigned long long #define fs first #define sc second #define clr( a, b ) memset((a),b,sizeof(a)) #define jora pair #define jora_d pair #define jora_ll pair #define mp make_pair #define max3(a,b,c) max(a,max(b,c)) #define min3(a,b,c) min(a,min(b,c)) #define PI acos(0.0) #define wait system("pause") #define ps pf("PASS\n") #define popc(a) (__builtin_popcount(a)) template void deb(T1 e1) { cout< void deb(T1 e1,T2 e2) { cout< void deb(T1 e1,T2 e2,T3 e3) { cout< void deb(T1 e1,T2 e2,T3 e3,T4 e4) { cout< void deb(T1 e1,T2 e2,T3 e3,T4 e4,T5 e5) { cout< void deb(T1 e1,T2 e2,T3 e3,T4 e4,T5 e5,T6 e6) { cout< //int on( int n, int pos ){ // return n = n|( 1< /// <--------------------------- For B - Base Number System -----------------------------------> //int base; //int pw[10]; //void calPow(int b){ // base = b; // pw[0] = 1; // for( int i = 1; i<10; i++ ){ // pw[i] = pw[i-1]*base; // } //} //int getV(int mask, int pos){ // mask /= pw[pos]; // return ( mask%base ); //} //int setV(int mask, int v, int pos){ // int rem = mask%pw[pos]; // mask /= pw[pos+1]; // mask = ( mask*base ) + v; // mask = ( mask*pw[pos] ) + rem; // return mask; //} /// <--------------------------- End B - Base Number System -----------------------------------> // moves //int dx[]= {0,0,1,-1};/*4 side move*/ //int dy[]= {-1,1,0,0};/*4 side move*/ //int dx[]= {1,1,0,-1,-1,-1,0,1};/*8 side move*/ //int dy[]= {0,1,1,1,0,-1,-1,-1};/*8 side move*/ //int dx[]={1,1,2,2,-1,-1,-2,-2};/*night move*/ //int dy[]={2,-2,1,-1,2,-2,1,-1};/*night move*/ //double Expo(double n, int p) { // if (p == 0)return 1; // double x = Expo(n, p >> 1); // x = (x * x); // return ((p & 1) ? (x * n) : x); //} //ll bigmod(ll a,ll b,ll m){if(b == 0) return 1%m;ll x = bigmod(a,b/2,m);x = (x * x) % m;if(b % 2 == 1) x = (x * a) % m;return x;} //ll BigMod(ll B,ll P,ll M){ ll R=1%M; while(P>0) {if(P%2==1){R=(R*B)%M;}P/=2;B=(B*B)%M;} return R;} /// (B^P)%M typedef pair pii; typedef pair pll; #define MXN 50 #define MXE #define MXQ #define SZE #define MOD #define EPS #define INF 100000000 #define MX 100005 #define inf 100000000 const ll mod = 1000000007ll; int main() { // freopen("input.txt", "r", stdin); int p, d, m, s; scanf("%d %d %d %d", &p, &d, &m, &s); int ans = 0; while(s>=p) { ans ++; s -= p; p = max(p-d,m); } printf("%d\n", ans); return 0; }