Scusate per il disturbo, stavo provando a risolvere il problema Teleport2,ma sono incappato in una sfilza di 0/100 con punteggio massimo ottenuto 35/100; Le formule che ho utilizzato sono le classiche formule della distanza tra due punti, Questo è il codice:
#include <bits/stdc++.h>
using namespace std;
int main(){
#ifdef EVAL
freopen("input.txt","r",stdin);
freopen("output.txt","w",stdout);
#endif
int T,Xa,Ya,Xb,Yb,Xc,Yc;
cin>>T;
double R;
double prim,sec,ter;
double sec1,ter1;
for(int i=0;i<T;i++){
cin>>Xa>>Ya>>Xb>>Yb>>Xc>>Yc>>R;
prim = sqrt((Xa-Xb)*(Xa-Xb)+(Ya-Yb)*(Ya-Yb));
sec1 = sqrt((Xa-Xc)*(Xa-Xc)+(Ya-Yc)*(Ya-Yc));
sec = max(0.0, sec1-R);
ter1 = sqrt((Xb-Xc)*(Xb-Xc)+(Yb-Yc)*(Yb-Yc));
ter = max(0.0, ter1-R);
double tot = min(prim, sec+ter);
tot=floor(tot*1000000)/1000000;
printf("%.6f\n", tot);
}
}