#include #define MOD 1000000007 #define rep(var, initVal, upto) for(int var = initVal; var=upto; --var) #define inArr(A,n) rep(i, 0, n) cin >> A[i]; #define inArr2d(A, n, m) rep(i, 0, n) rep(j, 0, m) cin >> A[i][j]; #define pd1(a) cout << #a << " : " << a << endl; #define pd2(a, b) cout << #a << " : " << a << " " << #b << " : " << b << endl; #define pdArr(A, n) rep(i, 0, n) cout << A[i] << " "; cout << endl; #define pdArr2d(A, n, m) rep(i, 0, n) { rep(j, 0, m) cout << A[i][j] << " "; cout << endl; } #define psep cout << "-------------------------------" << endl; #define pbsep cout << "===============================" << endl; #define pbbsep cout << "###############################" << endl; #define MAX(a, b) ((a)>(b)?(a):(b)) #define MIN(a, b) ((a)<(b)?(a):(b)) #define all(x) x.begin(), x.end() #define IO cout << boolalpha;ios_base::sync_with_stdio(false);cin.tie(NULL); using namespace std; typedef long long l; typedef unsigned long long ul; typedef vector vi; typedef vector vc; typedef vector vb; typedef vector vs; typedef vector vd; typedef vector vl; typedef vector
    vul; typedef vector vvi; typedef vector vvl; typedef vector vvul; typedef vector vvb; typedef vector vvc; typedef pair ii; typedef pair ll; typedef pair dd; typedef vector vii; typedef vector vll; typedef vector
    vdd; template inline void Swap(T &a, T &b){ a ^= b; b ^= a; a ^= b; } l exp(l a, ul b, ul mod){ l res = 1; while(b){ if(b&1) res = (res*a)%mod; a = (a*a)%mod; b >>= 1; } return res%mod; } l modInverse(l a, ul m) { return exp(a, m - 2, m); } int main(){ IO; int p, d, m, s; cin >> p >> d >> m >> s; int count = 0; while(p > m){ s -= p; p -= d; if(s >= 0) ++count; } while(s > 0){ s -= m; if(s >= 0) ++count; } cout << count << endl; return 0; }