fork download
  1. <?php
  2.  
  3. $dots = [];
  4. for ($i=0; $i<=4; $i++) {
  5. $dots[] = [mt_rand(0,20),mt_rand(0,20)];
  6. }
  7.  
  8.  
  9.  
  10. for ($i=0; $i<count($dots)-1; $i++) {
  11. for ($j=$i+1; $j<count($dots); $j++) {
  12. $x0 = $dots[$i][0];
  13. $x1 = $dots[$j][0];
  14. $y0 = $dots[$i][1];
  15. $y1 = $dots[$j][1];
  16. $disstance = sqrt(pow($x0-$x1, 2) + pow($y0-$y1, 2));
  17.  
  18. if (($i == 0) and ($j == 1)) {
  19. $minDisstance = $disstance;
  20. } elseif ($disstance < $minDisstance) {
  21. $minDisstance = $disstance;
  22. }
  23.  
  24. echo "($x0 $y0) : ($x1 $y1) - $disstance\n";
  25. }
  26. }
  27. echo "минимальное расстояние между точками - " . $minDisstance;
  28. //var_dump($ranges);
Success #stdin #stdout 0.01s 20520KB
stdin
Standard input is empty
stdout
(14 20) : (7 7) - 14.764823060233
(14 20) : (12 17) - 3.605551275464
(14 20) : (11 10) - 10.440306508911
(14 20) : (0 11) - 16.643316977093
(7 7) : (12 17) - 11.180339887499
(7 7) : (11 10) - 5
(7 7) : (0 11) - 8.0622577482985
(12 17) : (11 10) - 7.0710678118655
(12 17) : (0 11) - 13.416407864999
(11 10) : (0 11) - 11.045361017187
минимальное расстояние между точками - 3.605551275464