美文网首页
65. LeetCode 748. 最短完整词

65. LeetCode 748. 最短完整词

作者: 月牙眼的楼下小黑 | 来源:发表于2019-02-15 22:21 被阅读13次
  • 标签: 哈希表
  • 难度: 简单

  • 题目描述
  • 我的解法

licenseplate 转化成一个标准字典: key 为小写字母, val 为字母出现频次。对单词列表里的每个单词逐一判断即可

class Solution(object):
    def numberOfBoomerangs(self, points):
        """
        :type points: List[List[int]]
        :rtype: int
        """
        n = len(points)
        dist = [[0]*len(points) for _ in range(n)]
        for i in range(n):
            for j in range(n):
                dx = points[i][0] - points[j][0]
                dy = points[i][1] - points[j][1]
                dist[i][j] = dx**2 + dy**2   
        result = 0
        for i in range(n):
            ctr = {}
            for j in range(n):
                if ctr.get(dist[i][j], 0) == 0:
                    ctr[dist[i][j]] = 1
                else:
                    ctr[dist[i][j]] += 1
            for key, val in ctr.items():
                num = 1
                if val >= 2:
                    for i in range(val - 1, val + 1):
                        num *= i
                    result += num
        return result

  • 其他解法

暂略。

相关文章

网友评论

      本文标题:65. LeetCode 748. 最短完整词

      本文链接:https://www.haomeiwen.com/subject/gyrveqtx.html