提交时间:2022-10-15 11:29:58
运行 ID: 60404
#include<bits/stdc++.h> using namespace std; double t,a,b,c,d,e,f,r,k1,b1,ans1,ans2; int main(){ cin>>t; while(t--){ cin>>a>>b>>c>>d>>e>>f>>r; if(a==c)ans1=abs(a-e); else{ k1=(b-d)/(a-c),b1=(a*d-b*c)/(a-c); ans1=abs(k1*e-f+b1)/sqrt(k1*k1+1)-r; } ans2=max(sqrt((e-a)*(e-a)+(f-b)*(f-b)),sqrt((e-c)*(e-c)+(f-d)*(f-d)))+r; printf("%.2f %.2f\n",ans1,ans2); } } /* y=k1x+b1 k1x-y+b1=0 (a,b);(c,d) y=(b-d)/(a-c)x+(ad-bc)/(a-c) 11 4 1 4 9 8 1 y=0x+4 */