fn getline() -> String{ let mut ret = String::new(); std::io::stdin().read_line(&mut ret).ok(); return ret; } fn ydir(y: f32, l: f32) -> f32 { if y < 0.0 { return (y.abs()/l).ceil() + 1.0 } else { return (y.abs()/l).ceil() } } fn xdir(x: f32, l: f32) -> f32 { if x.abs() > 0.0 { return (x.abs()/l).ceil() + 1.0 } else { return (x.abs()/l).ceil() } } fn main() { let x: f32 = getline().trim().parse().unwrap(); let y: f32 = getline().trim().parse().unwrap(); let l: f32 = getline().trim().parse().unwrap(); println!("{}", xdir(x, l)+ydir(y, l)); }