「每日LeetCode」2021年11月17日
本文最后更新于:2023年3月19日 晚上
Lt318. 最大单词长度乘积
318. 最大单词长度乘积
给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母。你可以认为每个单词只包含小写字母。如果不存在这样的两个单词,返回 0。
示例 1:
输入: [“abcw”,”baz”,”foo”,”bar”,”xtfn”,”abcdef”] 输出: **16 **解释: 这两个单词为** “abcw”, “xtfn”。
*示例 2:\*
**输入: [“a”,”ab”,”abc”,”d”,”cd”,”bcd”,”abcd”] 输出: **4 **解释: **这两个单词为 “ab”, “cd”。
**示例 3:
输入: [“a”,”aa”,”aaa”,”aaaa”] **输出: **0 **解释: **不存在这样的两个单词。
提示:
- 2 <= words.length <= 1000
- 1 <= words[i].length <= 1000
- words[i] 仅包含小写字母
思路
遍历每个字符将对应的位数设为 1,转化为 2 进制数。再 ON2 遍历每个单词,与计算判断是否有重复的字母,没有的话乘计算最大值。
解答
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!