2306.公司命名
链接:2306.公司命名
难度:Hard
标签:位运算、数组、哈希表、字符串、枚举
简介:返回 不同 且有效的公司名字的数目。
题解 1 - python
- 编辑时间:2024-09-25
- 执行用时:409ms
- 内存消耗:28.9MB
- 编程语言:python
- 解法介绍:把首字符做key存储数据,遍历时取差集
class Solution:
    def distinctNames(self, ideas: List[str]) -> int:
        map = defaultdict(set)
        for idea in ideas: map[idea[0]].add(idea[1:])
        data = list(map.values())
        res = 0
        for i1 in range(len(data)):
            v1 = data[i1]
            for i2 in range(i1):
                v2 = data[i2]
                res += len(v1 - v2) * len(v2 - v1) * 2
        return res