fn main() { let mut s = String::new(); std::io::stdin().read_line(&mut s).ok(); let n: Vec = s.split_whitespace().flat_map(str::parse).collect(); println!( "{}", n[0].min(n[1]) + match n[0] - n[1] { 0 => 0, d if d > 0 => d / (n[2] + 1), d => -d / (n[3] + 1), }, ) }