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 解释: 不存在这样的两个单词。
class Solution {
public:
int maxProduct(vector<string>& words) {
int res = 0;
unordered_map<int, int> m;
for (string word : words) {
int mask = 0;
for (char c : word) {
mask |= 1 << (c - 'a');
}
m[mask] = max(m[mask], int(word.size()));
for (auto a : m) {
if (!(mask & a.first)) {
res = max(res, (int)word.size() * a.second);
}
}
}
return res;
}
};
318.最大单词长度乘积相关推荐
- LeetCode 391. 完美矩形(扫描线) / 318. 最大单词长度乘积 / 563. 二叉树的坡度
391. 完美矩形 2021.11.16 每日一题 题目描述 给你一个数组 rectangles ,其中 rectangles[i] = [xi, yi, ai, bi] 表示一个坐标轴平行的矩形.这 ...
- C++题解-Leecode 318. 最大单词长度乘积——Leecode每日一题系列
今天是坚持每日一题打卡的第二十二天 题目链接:https://leetcode-cn.com/problems/maximum-product-of-word-lengths/ 题解汇总:https: ...
- 318. 最大单词长度乘积 golang
question 给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母.你可以认为每个单词只包含小写字母.如 ...
- LeetCode 318. 最大单词长度乘积(位运算)
1. 题目 给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母.你可以认为每个单词只包含小写字母.如果不存 ...
- leetcode 318 最大单词长度乘积
https://leetcode-cn.com/problems/maximum-product-of-word-lengths/ 题目 给定一个字符串数组wordswordswords,找到leng ...
- leetcode 318. Maximum Product of Word Lengths | 318. 最大单词长度乘积
题目 https://leetcode.com/problems/maximum-product-of-word-lengths/ 题解 中规中矩的题目,中规中矩的思路,不像是一个 medium 题. ...
- 【LeetCode笔记 - 每日一题】318. 最大单词长度乘积(Java、位运算)
文章目录 题目描述 思路 && 代码 题目描述 挺不错!有bitmap的感觉了. 思路 && 代码 思路好想:两两对比,无公共判断,维护 res 那么,如何进行公共判断 ...
- JAVA(2021-11-17)leetcode每日一题---- 最大单词长度乘积
这个题的难点并不在于找的过程,因为没有什么可以记录的,就是要挨个比,n平方的复杂度.但是这个题的优化空间在于比较两个单词是否含有公共字母. 一看到是否含有重复的,是否含有重复字符,我们就应该想到是不是 ...
- python找最长的单词_318. 最长单词长度乘积(Python)
题目 难度:★★★☆☆ 类型:数组,字符串 方法:无 给定一个字符串数组 words,找到 length(word[i]) * length(word[j]) 的最大值,并且这两个单词不含有公共字母. ...
- 剑指Offer Ⅱ 005.单词长度的最大乘积 (力扣剑指Offer专项突击版——整数_5)
题目 给定一个字符串数组 words,请计算当两个字符串 words[i] 和 words[j] 不包含相同字符时,它们长度的乘积的最大值.假设字符串中只包含英语的小写字母.如果没有不包含相同字符的一 ...
最新文章
- Delphi下利用WinIo模拟鼠标键盘详解
- 2021年春季学期教学记录
- 最明的int和Integer的区别
- OpenGL实现3D魔方游戏源代码
- log4j.rootLogger 与log4j.rootCategory 有什么区别 .
- (十七)java版spring cloud+spring boot 社交电子商务平台-spring+springmvc+kafka分布式消息中间件集成方案...
- 如何巧妙的使用ArrayList的Clone方法
- Navicat for MySQL - 破解
- DELPHI获取网卡MAC地址 转
- C++描述杭电OJ 2012. 素数判定 ||
- WindowsXP命令行修改服务启动选项
- 【POJ - 2376】Cleaning Shifts (贪心)
- STL vector 用法
- 使用正则表达式从字符串中提取email
- 隔壁宿舍的都哭了,单片机最小应用系统不懂你都毕不了业
- printf格式控制符的完整格式(转载)
- IDEA插件系列(46):PDF Viewer插件——PDF文档查看器
- 如何通过提问识人(行为面试法)
- VC - vs2017里poco的websocket使用netssl
- 安全服务/渗透测试工程师_面试题之OWASP TOP 10
热门文章
- WPF之HierarchicalDataTemplate
- 一个软件工程师在北京的反省
- jdk 动态代理基本例子
- Debian Gnu/Linux8.5安装GOLANG环境笔记
- Navicat for Mysql 如何备份数据库
- hihoCoder #1014 : Trie树 [ Trie ]
- Clob,Blob,InputStream,byte 互转
- pop3方式接收不了邮件原因
- mysql innodb_log_group_home_dir_如何添加和调整mysql innodb log文件
- pythonpm2.5空气质量提醒_Python实现抓取城市的PM2.5浓度和排名