Given n points in the plane that are all pairwise distinct, a "boomerang" is a tuple of points (i, j, k) such that the distance between iand j equals the distance between i and k (the order of the tuple matters).
Find the number of boomerangs. You may assume that n will be at most 500 and coordinates of points are all in the range [-10000, 10000] (inclusive).
Example:
Input:[[0,0],[1,0],[2,0]]Output:2Explanation:The two boomerangs are [[1,0],[0,0],[2,0]] and [[1,0],[2,0],[0,0]]

题意:给出n个点的坐标,找到ijk三个点,使得i到j和k的距离相等。

public class Solution {
    public int numberOfBoomerangs(int[][] points) {
        ////还有负数。。。。。hehe....坐标轴。。。。并不是只有x轴
        // int length=points.length;
        // int m;
        // int count=0;
        // for(int i=0;i=0){
        //         if(points[i][0]-points[i-m][0]==points[i+m][0]-points[i][0]){
        //             count=count+2;
        //         }
        //         m++;
        //     }
        // }
        // // System.out.println(length);
        // return count;
        //http://blog.csdn.net/MebiuW/article/details/53096120
        //  int length=points.length;
        //  int count=0;
        //  for(int i=0;i map=new HashMap();
        //      for(int j=0;j map=new HashMap();
            for(int j=0;j 
  

PS:第一次以为只有x轴正半轴,然后才发现其实是x,y轴4个空间。

最后的思想是遍历所有点,找到所有点距其距离相等的点的个数n,那么就有n(n-1)个,不断累加即可。