python【力扣LeetCode算法题库】1160-拼写单词
2020-03-23 18:35
597 查看
- 拼写单词
给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars。
假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。
注意:每次拼写时,chars 中的每个字母都只能用一次。
返回词汇表 words 中你掌握的所有单词的 长度之和。
示例 1:
输入:words = [“cat”,“bt”,“hat”,“tree”], chars = “atach”
输出:6
解释:
可以形成字符串 “cat” 和 “hat”,所以答案是 3 + 3 = 6。
示例 2:
输入:words = [“hello”,“world”,“leetcode”], chars = “welldonehoneyr”
输出:10
解释:
可以形成字符串 “hello” 和 “world”,所以答案是 5 + 5 = 10。
class Solution(object): def countCharacters(self, words, chars): """ :type words: List[str] :type chars: str :rtype: int """ dic={} for i in chars: dic[i]=dic.get(i,0)+1 # if i not in dic: # dic[i]=1 # else: # dic[i]+=1 length=0 for word in words: flag=1 for i in set(word): if i not in chars or word.count(i)>dic[i]: flag=0 break #print(word,flag) if flag==1: length+=len(word) return length
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- python【力扣LeetCode算法题库】876- 链表的中间结点
- python【力扣LeetCode算法题库】945- 使数组唯一的最小增量
- python【力扣LeetCode算法题库】365- 水壶问题(裴蜀等式)
- python【力扣LeetCode算法题库】面试题40- 最小的k个数
- python【力扣LeetCode算法题库】409-最长回文串(数学 计数器)
- python【力扣LeetCode算法题库】836- 矩形重叠
- Leetcode 1160: 拼写单词
- Leetcode“有效的括号”python3解题(力扣刷题之路)
- 算法——力扣两数相加Python解法
- Python LeetCode(58.最后一个单词的长度)
- 用python写leetcode【4】 --单词搜索 II(212) (dfs+前缀树/字典树)
- [算法Rust,Go,Python,JS实现)]LeetCode之20-有效括号匹配
- python写算法题:leetcode: 32. Longest Valid Parentheses
- python写算法题:leetcode: 13. Roman to Integer
- python写算法题:leetcode: 19. Remove Nth Node From End of List
- 玩转算法面试 leetcode题库分门别类详细解析视频教程
- python写算法题:leetcode: 6. ZigZag Conversion
- LeetCode初级算法的Python实现--动态规划
- [算法Rust,Go,Python,JS实现)]LeetCode之01-两数之和
- python leetcode 58最后一个单词的长度