N = gets.to_i X = gets.to_i A = gets.to_i B = gets.to_i def f ng = 0 ok = X while (ok - ng).abs >= 2 v = (ok + ng) / 2 if v * A >= X ok = v else ng = v end end ok end def g ng = 0 ok = X lim = 2.pow(N - 1) - 1 while (ok - ng).abs >= 2 v = (ok + ng) / 2 if X + v * B > lim ok = v else ng = v end end ok end puts [f, g].min