输入N个互不相同的二维整数坐标,求这N个坐标可以构成的正方形数量。(内积只为零的的两个向量垂直)
第一行输入为N,N代表坐标数量,N为正整数。
已知正方形的一条边是可以确定正方形,假设两个点是(a1,a2),(b1,b2),那么可以确定 c1=a1+(a2-b2),c2=a2-(a1-b1) d1=b1+(a2-b2),d2=b2-(a1-b1) 或者 c1=a1+(a2-b2),c2=a2-(a1-b1); d1=b1+(a2-b2),d2=b2-(a1-b1); 因此一个正方形会被计算八遍,枚举任意两个点计算出来的结果/8就是答案,这个正方形可以二分也可以哈希,看到点的横坐标纵坐标范围很小考虑n4枚举任意两个点即可