题意/Description:
给定三个点(不共线)的坐标,要求以这三个点为圆心做三个圆,圆两两不相交,不包含,问三个圆的直径和最大为多少。
读入/Input:
第一行为测试数据组数t。接下来t行每行6个数为坐标。
输出/Output:
T行,每行一个整数表示直径和(取下整)。
题解/solution:
输出三个点连起来的周长。
代码/Code:
var
t:longint;
x1,y1,x2,y2,x3,y3:int64;
l1,l2,l3:real;
procedure init;
var
i,j:longint;
begin
readln(t);
for i:=1 to t do
begin
readln(x1,y1,x2,y2,x3,y3);
l1:=sqrt(sqr(x1-x2)+sqr(y1-y2));
l2:=sqrt(sqr(x2-x3)+sqr(y2-y3));
l3:=sqrt(sqr(x1-x3)+sqr(y1-y3));
writeln(trunc(l1+l2+l3));
end;
end;
begin
init;
end.
探讨了给定三个不共线点坐标时,如何求解以这三点为圆心且互不相交、互不包含的三个圆的最大直径和。通过计算三点间的距离并将其作为直径,最终输出这些直径之和。
1338

被折叠的 条评论
为什么被折叠?



