leetcode在力扣 App 中打开
调试中...
调试中...
题目描述
题目描述
题解
题解
提交记录
提交记录
代码
代码
测试用例
测试用例
测试结果
测试结果
困难
相关标签
相关企业
提示

给定一份单词的清单,设计一个算法,创建由字母组成的面积最大的矩形,其中每一行组成一个单词(自左向右),每一列也组成一个单词(自上而下)。不要求这些单词在清单里连续出现,但要求所有行等长,所有列等高。

如果有多个面积最大的矩形,输出任意一个均可。一个单词可以重复使用。

示例 1:

输入:["this", "real", "hard", "trh", "hea", "iar", "sld"]
输出:
[
   "this",
   "real",
   "hard"
]

示例 2:

输入:["aa"]
输出:["aa","aa"]

说明:

  • words.length <= 1000
  • words[i].length <= 100
  • 数据保证单词足够随机
通过次数
4K
提交次数
7.9K
通过率
50.6%


相关企业

提示 1
首先根据单词长度对字典进行分组,因为你知道每一列的长度必须相同,每一行的长度也必须相同。

提示 2
你能找到一个特定长宽的单词矩阵吗?如果尝试了所有的选项会怎样?

提示 3
当矩形看起来无效时,可以使用trie提前终止吗?

评论 (0)

《程序员面试金典(第 6 版)》独家授权
本书是原谷歌资深面试官的经验之作,帮助了许多想要加入脸书、苹果、谷歌等 IT 名企的求职者拿到 Dream offer。本专题的 100+ 编程面试题是在原书基础上精心挑选出来的,帮助你轻松应战 IT 名企技术面试。
© 2025 领扣网络(上海)有限公司
0 人在线
行 1,列 1
运行和提交代码需要登录
words =
["this", "real", "hard", "trh", "hea", "iar", "sld"]
Source