fun readInt () = valOf (TextIO.scanStream (Int.scan StringCvt.DEC) TextIO.stdIn) val () = let val a = readInt () val b = readInt () val c = readInt () val d = readInt () fun findAns 0 _ _ = 0 | findAns _ 0 _ = 0 | findAns v m s = if m < c then 0 else if d < v + c + s then 0 else 1 + findAns (v - 1) (m - c) (1 + c + s) val ans = findAns a b 0 in print (Int.toString ans ^ "\n") end