[LeetCode 318] Maximum Product of Word Lengths
来源:互联网 发布:合肥飞恒网络 编辑:程序博客网 时间:2024/06/04 19:58
Given a string array words
, find the maximum value of length(word[i]) * length(word[j])
where the two words do not share common letters. You may assume that each word will contain only lower case letters. If no such two words exist, return 0.
Example 1:
Given ["abcw", "baz", "foo", "bar", "xtfn", "abcdef"]
Return 16
The two words can be "abcw", "xtfn"
.
Example 2:
Given ["a", "ab", "abc", "d", "cd", "bcd", "abcd"]
Return 4
The two words can be "ab", "cd"
.
Example 3:
Given ["a", "aa", "aaa", "aaaa"]
Return 0
No such pair of words.
Solution:
Use bit manipulation to mark if two words has shared character, then iterate to check max product
public int maxProduct(String[] words) { int len = words.length; if(len <=1 ) return 0; int[] mask = new int[len]; for(int i=0;i<len;i++) { for(int j=0;j<words[i].length();j++) { mask[i] |= 1 << (words[i].charAt(j)-'a'); } } int max = 0; for(int i=0;i<len;i++) { for(int j=i+1;j<len;j++) { if((mask[i] & mask[j]) == 0) { max = Math.max(max, words[i].length() * words[j].length()); } } } return max; }
1 0
- [LeetCode 318] Maximum Product of Word Lengths
- LeetCode 318: Maximum Product of Word Lengths
- LeetCode 318 Maximum Product of Word Lengths
- leetcode(318):Maximum Product of Word Lengths
- leetcode 318 Maximum Product of Word Lengths
- LeetCode 318 Maximum Product of Word Lengths
- LeetCode #318: Maximum Product of Word Lengths
- Leetcode 318 Maximum Product of Word Lengths
- LeetCode 318 Maximum Product of Word Lengths
- leetcode Maximum Product of Word Lengths
- Leetcode: Maximum Product of Word Lengths
- 【leetcode】318. Maximum Product of Word Lengths
- leetcode Maximum Product of Word Lengths
- leetcode -- Maximum Product of Word Lengths -- 重点
- Maximum Product of Word Lengths | LeetCode
- Leetcode: Maximum Product of Word Lengths
- LeetCode:Maximum Product of Word Lengths
- Leetcode: Maximum Product of Word Lengths
- 如何删除myeclipse自带的maven插件
- 华为机试——将一句英文中的单词排序
- Gradle对Spring源码编译
- iOS引入小米push SDK出现duplicate symbol时的解决方法
- 常用控件:03_004 ScrollView嵌套ListView实现和其替代方法
- [LeetCode 318] Maximum Product of Word Lengths
- 从HDFS拷贝一个表到系统目录生成CSV
- uva1146Now or later飞机调度【2-SAT】入门题
- asp.net 路径解惑
- 自定义dialog中组件的获取
- android studio 测试两种测试用例的切换问题
- 纯js实现点击一个事件后,触发另外一个事件的方法
- Android组件ImageLoader
- DOS批处理之一----返回值