#include #include #include using namespace std; using namespace __gnu_pbds; typedef long long ll; typedef vector vi; typedef pair pii; template using Tree = tree, rb_tree_tag,tree_order_statistics_node_update>; #define FOR(i, a, b) for (int i=a; i<(b); i++) #define F0R(i, a) for (int i=0; i<(a); i++) #define FORd(i,a,b) for (int i = (b)-1; i >= a; i--) #define F0Rd(i,a) for (int i = (a)-1; i >= 0; i--) #define sz(x) (int)(x).size() #define mp make_pair #define pb push_back #define f first #define s second #define lb lower_bound #define ub upper_bound const int MOD = 1000000007; int p,d,m,s, cur=0, ans=0; int main() { ios_base::sync_with_stdio(0);cin.tie(0); cin >> p >> d >> m >> s; int co = 0; while (p > m) { cur += p; p -= d; co++; if (cur <= s) ans = co; } if (cur > s) { cout << ans; return 0; } ans += (s-cur)/m; cout << ans; } // read! // ll vs. int!