#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef int64_t int64; // BEGIN CUT #define DBG(x) #x << " = " << x #define REP(i,n) for (int i = 0; i < (n); i++) #define REPV(i,v) for (size_t i = 0; i < v.size(); i++) #define ALL(x) (x).begin(), (x).end() #define SORT(x) sort(ALL(x)) #define UNIQUE(x) SORT(x), x.resize(unique(ALL(x)) - x.begin()) #define pb push_back template ostream& operator <<(ostream& os, const pair& v) { os << "(" << v.first << " " << v.second << ")"; return os; } template ::value>::type> ostream& operator<<(ostream& os, const T& v) { os << '['; for (const auto& it : v) os << it << " "; if (!v.empty()) os << "\b"; os << "]"; return os; } // END CUT int main() { #ifdef LocalHost freopen("input.txt", "rt", stdin); #endif cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); int p, d, m, s, ans = 0; cin >> p >> d >> m >> s; while (s >= p) { ans++; s -= p; p = max(p-d, m); } cout << ans << endl; return 0; }