fork download
  1. #include <stdio.h>
  2. #include<math.h>
  3.  
  4.  
  5. float distance(int n1,int m1,int n2,int m2){
  6. float d=0;float sum=0;
  7. d =sqrt(pow(m2-m1,2)+pow(n2-n1,2));
  8. sum+=d;
  9. printf("%.2f",sum);
  10. return sum;
  11. }
  12. int main(void) {
  13. int t,n,i,j;float sum=0;
  14. scanf("%d",&t);
  15. while(t--){
  16. scanf("%d",&n);
  17. int r=0,s=0,a=0,b=0;
  18. int x[100002],y[100002],p[100002],q[100002],min[100002],max[100002];
  19. for(i=0;i<n;i++){
  20. scanf("%d %d",&x[i],&y[i]);}
  21.  
  22. for(j=0;j<10001;j++){
  23. for(i=0;i<n;i++){
  24. if(j==x[i]){
  25. p[r++]=x[i];q[s++]=y[i];
  26. }
  27. }}
  28. for(i=0,j=i+1;i<n&&j<n;i++,j++){
  29. if(p[i]==p[j]){
  30. if(q[i]>q[j]){min[a++]=p[i]; max[b++]=q[i];}
  31. else{min[a++]=p[i]; max[b++]=q[j];}
  32. }
  33. else{min[a++]=p[i]; max[b++]=q[i];}
  34. }
  35.  
  36. for(i=0;i<n;i++){
  37. distance(min[i],max[i],min[i+1],max[i+1]);
  38. }
  39.  
  40. printf("%.2f\n",sum);
  41.  
  42.  
  43. }
  44.  
  45. }
  46.  
Success #stdin #stdout 0s 4512KB
stdin
Standard input is empty
stdout
Standard output is empty