-
Leetcode 3016. Minimum Number of Pushes to Type Word II
- 1. 解题思路
- 2. 代码实现
- 题目链接:3016. Minimum Number of Pushes to Type Word II
1. 解题思路
这道题的话思路其实还是蛮简单的,显然我们的目的是要令对给定的word在键盘上敲击的次数最小。
因此,我们只需要对单词当中按照字符的频次进行倒序排列,然后出现频次越高的字母就安排尽量靠前的位置即可。
2. 代码实现
给出python代码实现如下:文章来源:https://www.toymoban.com/news/detail-814233.html
class Solution:
def minimumPushes(self, word: str) -> int:
cnt = Counter(word)
cnt = sorted(cnt.items(), key=lambda x: x[1], reverse=True)
ans = 0
for i, (k, v) in enumerate(cnt):
ans += v * (i // 8 + 1)
return ans
提交代码评测得到:耗时137ms,占用内存17.6MB。文章来源地址https://www.toymoban.com/news/detail-814233.html
到了这里,关于Leetcode 3016. Minimum Number of Pushes to Type Word II的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!