#!/bin/python3 import sys def howManyGames(p, d, m, s): # Return the number of games you can buy if s < p: return 0 if d == 0: return s // p n_bargains = (p-m) // d + 1 average_bargain_cost = (p + p - (n_bargains-1) * d)/2 remainder = s - n_bargains * average_bargain_cost if remainder >= 0: return int(n_bargains + remainder // m) else: n_bargains = max([i for i in range(0, s // d) if s - i*((p + p-(i-1)*d) / 2) >= 0]) return int(n_bargains) if __name__ == "__main__": p, d, m, s = input().strip().split(' ') p, d, m, s = [int(p), int(d), int(m), int(s)] answer = howManyGames(p, d, m, s) print(answer)