use std::io::{self, BufRead};

fn main() {
    let input = io::stdin()
        .lock()
        .lines()
        .map(|n| n.unwrap().parse::<isize>().unwrap())
        .collect::<Vec<_>>();

    if let &[x, y, l] = &input[..] {
        let rotations = if y >= 0 {
            if x == 0 {
                0
            } else {
                1
            }
        } else {
            2
        };
        let x_moves = if x.abs() % l == 0 {
            x.abs() / l
        } else {
            x.abs() / l + 1
        };
        let y_moves = if y.abs() % l == 0 {
            y.abs() / l
        } else {
            y.abs() / l + 1
        };

        println!("{}", rotations + x_moves + y_moves);
    }
}