using System; using System.IO; using System.Collections.Generic; using static System.Console; using static System.Math; class Start{ static void Solve(){ var x=Abs(Rint()); var y=Abs(Rint()); var l=Rint(); WriteLine((x+l-1)/l+(y+l-1)/l); } static void Main(){ READ_COUNT=0; READ=In.ReadToEnd().Split(' ','\n'); var sw=new StreamWriter(OpenStandardOutput()){AutoFlush=false}; SetOut(sw); Solve(); Out.Flush(); } const long MOD=1000000007L; static void Swap(ref T a,ref T b){T c=a;a=b;b=c;} static string Read()=>READ[READ_COUNT++]; static int Rint()=>int.Parse(READ[READ_COUNT++]); static long Rlong()=>long.Parse(READ[READ_COUNT++]); static double Rdouble()=>double.Parse(READ[READ_COUNT++]); static char Rchar()=>READ[READ_COUNT++][0]; static string[] READ;static int READ_COUNT; } class Pair:IComparable>where T1:IComparablewhere T2:IComparable{ public T1 F;public T2 S; public Pair(T1 f,T2 s){F=f;S=s;} public int CompareTo(Pair p)=>F.CompareTo(p.F)!=0?F.CompareTo(p.F):S.CompareTo(p.S); }