public class Solution
{
public static void main(String[] args)
{
double[][] points =
{
{-1, 0, 3}, {-1, -1, -1},
{4, 1, 1}, {2, 0.5, 9},
{3.5, 2, -1}, {3, 1.5, 3},
{-1.5, 4, 2}, {5.5, 4, -0.5}
};
double shortestDistance = distance(points[0][0], points[0][1], points[0][2],
points[1][0], points[1][1], points[1][2]);
double currentDistance = shortestDistance;
for(int i = 0; i < points.length; i++)
{
for(int j = i + 1; j < points.length; j++)
{
currentDistance = distance(points[i][0], points[i][1], points[i][2],
points[j][0], points[j][1], points[j][2]);
if(currentDistance < shortestDistance)
shortestDistance = currentDistance;
}
}
System.out.println("The shortest distance is " + shortestDistance);
}
public static double distance(double x1, double y1, double z1, double x2, double y2, double z2)
{
double square = (x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) + (z2 - z1) * (z2 - z1);
return Math.sqrt(square);
}
}