⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ex.dpr

📁 tongji acm-online judge solution
💻 DPR
字号:
program Ural_1420(Input,Output);
type
	TIndex=Longint;
	TData=Int64;
	TPoint=record
		x,y:TData;
	end;
function Det(A,B:TPoint):TData;
begin
	Result:=A.x*B.y-A.y*B.x;
end;
function Dot(A,B:TPoint):TData;
begin
	Result:=A.x*B.x+A.y*B.y;
end;
function Floor(A,B:TData):TIndex; //A>=0, B>0
begin
	Result:=A div B;
end;
function Ceil(A,B:TData):TIndex; //A>=0, B>0
begin
	if A=0 then Result:=0
	else Result:=(A-1) div B+1;
end;
procedure Main;
var
	A,B,P:TPoint;
	x,y:TIndex;
	t:TData;
	Count:TIndex;
begin
	Readln(A.x,A.y);
	Readln(B.x,B.y);
	t:=B.x*B.x+B.y*B.y;
	if t=0 then
	begin
		Writeln(0);
		Exit;
	end;
	P.x:=Abs(Det(A,B));
	P.y:=Abs(Dot(A,B));
	Count:=0;
	for x:=Floor(P.x,t)-1 to Ceil(P.x,t)+1 do
		for y:=Floor(P.y,t)-1 to Ceil(P.y,t)+1 do
			if Sqr(x-P.x/t)+Sqr(y-P.y/t)<1 then
				Inc(Count);
	Writeln(Count);
end;
begin
	Main;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -