{
ZADATAK: Meteor
JEZIK: PASCAL
}
{$R-}
{$S-}
{$D-}
{$V-}
var
	x,y,r,r2:double;
	px,nx,ex,ey,py,ny:longint;
	count:int64;
function usla(x1,y1:longint):boolean;  {ne usla}
begin
	usla:=r2<=(sqr(x1-x)+sqr(y1-y));
end;
function k1(xk,yk:longint):boolean;
var
	ox,oy:longint;
begin
	if usla(xk,yk) then
	 begin
		ox:=xk-1;
		oy:=yk-1;
		dec(count);
		while (usla(ox,yk)) and (ox>=x) do
		 begin
			dec(ox);
			dec(count);
		 end;
		while (usla(xk,oy)) and (oy>=y) do
		 begin
			dec(oy);
			dec(count);
		 end;
			k1:=true;
		end;
end;
function k2(xk,yk:longint):boolean;
var
	ox,oy:longint;
begin
	if usla(xk,yk) then
	 begin
		ox:=xk+1;
		oy:=yk-1;
		dec(count);
		while (usla(ox,yk)) and (ox<=x) do
		 begin
			inc(ox);
			dec(count);
		 end;
		while (usla(xk,oy)) and (oy>=y) do
		 begin
			dec(oy);
			dec(count);
		 end;
			k2:=true;
		end;
end;
function k3(xk,yk:longint):boolean;
var
	ox,oy:longint;
begin
	if usla(xk,yk) then
	 begin
		ox:=xk+1;
		oy:=yk+1;
		dec(count);
		while (usla(ox,yk)) and (ox<=x) do
		 begin
			inc(ox);
			dec(count);
		 end;
		while (usla(xk,oy)) and (oy<=y) do
		 begin
			inc(oy);
			dec(count);
		 end;
			k3:=true;
		end;
end;
function k4(xk,yk:longint):boolean;
var
	ox,oy:longint;
begin
	if usla(xk,yk) then
	 begin
		ox:=xk-1;
		oy:=yk+1;
		dec(count);
		while (usla(ox,yk)) and (ox>=x) do
		 begin
			dec(ox);
			dec(count);
		 end;
		while (usla(xk,oy)) and (oy<=y) do
		 begin
			inc(oy);
			dec(count);
		 end;
			k4:=true;
		end;
end;
begin
	readln(x,y,r);
	PX:=round(x+r);
	NX:=round(x-r);
	PY:=round(y+r);
	NY:=round(y-r);
	r2:=sqr(r);
	count:=(px-nx)*(py-ny);
	ex:=px-1;
	ey:=py-1;
	while (k1(ex,ey)) and (ex>=x) and (ey>y) do
	 begin
		dec(ex);
		dec(ey);
	 end;
	ex:=nx+1;
	ey:=py-1;
	while (k2(ex,ey)) and (ex<=x) and (ey>y) do
	 begin
		inc(ex);
		dec(ey);
	 end;

	ex:=nx+1;
	ey:=ny+1;
	while (k3(ex,ey)) and (ex<=x) and (ey<y) do
	 begin
		inc(ex);
		inc(ey);
	 end;
	ex:=px-1;
	ey:=ny+1;
	while (k4(ex,ey)) and (ex>=x) and (ey<y) do
	 begin
		dec(ex);
		inc(ey);
	 end;
	 writeln(count);
end.