LeetCode447 迴旋鏢的數量

2021-09-09 06:42:50 字數 1008 閱讀 1827

447. 迴旋鏢的數量

給定平面上n 對不同的點,「迴旋鏢」 是由點表示的元組(i, j, k),其中ij之間的距離和ik之間的距離相等(需要考慮元組的順序)。

找到所有迴旋鏢的數量。你可以假設n 最大為500,所有點的座標在閉區間[-10000, 10000]中。

示例:

輸入:[[0,0],[1,0],[2,0]]輸出:2解釋:兩個迴旋鏢為[[1,0],[0,0],[2,0]][[1,0],[2,0],[0,0]]
class solution(object):

def numberofboomerangs(self, points):

""":type points: list[list[int]]

:rtype: int

"""ans = 0

def distances(p1,p2):

dis = (p1[0] - p2[0])**2 + (p1[1] - p2[1])**2

return dis

for lst1 in points:

count = {}

for lst2 in points:

if lst1 != lst2:

dis = distances(lst1,lst2)

count[dis] = count.get(dis,0) + 1

for i in count.values():

if i >= 2:

ans += i*(i-1)

return ans

LeetCode447 迴旋鏢的數量

給定平面上 n 對不同的點,迴旋鏢 是由點表示的元組 i,j,k 其中 i 和 j 之間的距離和 i 和 k 之間的距離相等 需要考慮元組的順序 找到所有迴旋鏢的數量。你可以假設 n 最大為 500,所有點的座標在閉區間 10000,10000 中。示例 輸入 0,0 1,0 2,0 輸出 2解釋 ...

leetcode447 迴旋鏢的數量

給定平面上 n 對不同的點,迴旋鏢 是由點表示的元組 i,j,k 其中 i 和 j 之間的距離和 i 和 k 之間的距離相等 需要考慮元組的順序 找到所有迴旋鏢的數量。你可以假設 n 最大為 500,所有點的座標在閉區間 10000,10000 中。示例 輸入 0,0 1,0 2,0 輸出 2 解釋...

LeetCode 447 迴旋鏢的數量

給定平面上 n 對不同的點,迴旋鏢 是由點表示的元組 i,j,k 其中 i 和 j 之間的距離和 i 和 k 之間的距離相等 需要考慮元組的順序 找到所有迴旋鏢的數量。你可以假設 n 最大為 500,所有點的座標在閉區間 10000,10000 中。示例 輸入 0,0 1,0 2,0 輸出 2 解釋...