fork(1) 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. $minDisstance = INF;
  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 ($disstance < $minDisstance) {
  19. $minDisstance = $disstance;
  20. }
  21.  
  22. echo "($x0 $y0) : ($x1 $y1) - $disstance\n";
  23. }
  24. }
  25. echo "минимальное расстояние между точками - " . $minDisstance;
  26. //var_dump($ranges);
Success #stdin #stdout 0.01s 20568KB
stdin
Standard input is empty
stdout
(18 12) : (16 9) - 3.605551275464
(18 12) : (8 20) - 12.806248474866
(18 12) : (18 15) - 3
(18 12) : (8 10) - 10.198039027186
(16 9) : (8 20) - 13.601470508735
(16 9) : (18 15) - 6.3245553203368
(16 9) : (8 10) - 8.0622577482985
(8 20) : (18 15) - 11.180339887499
(8 20) : (8 10) - 10
(18 15) : (8 10) - 11.180339887499
минимальное расстояние между точками - 3