LeetCode日记_007_猜字谜
题目信息:
外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧。
字谜的迷面puzzle 按字符串形式给出,如果一个单词word符合下面两个条件,那么它就可以算作谜底:
单词word中包含谜面puzzle的第一个字母。
单词word中的每一个字母都可以在谜面puzzle中找到。
例如,如果字谜的谜面是 “abcdefg”,那么可以作为谜底的单词有 “faced”, “cabbage”, 和 “baggage”;而 “beefed”(不含字母 “a”)以及"based"(其中的 “s” 没有出现在谜面中)。
返回一个答案数组answer,数组中的每个元素answer[i]是在给出的单词列表 words 中可以作为字谜迷面puzzles[i]所对应的谜底的单词数目。
例:
输入:
words = [“aaaa”,“asas”,“able”,“ability”,“actt”,“actor”,“access”],
puzzles = [“aboveyz”,“abrodyz”,“abslute”,“absoryz”,“actresz”,“gaswxyz”]
输出:[1,1,3,2,4,0]
解释:
1 个单词可以作为 “aboveyz” 的谜底 : “aaaa”
1 个单词可以作为 “abrodyz” 的谜底 : “aaaa”
3 个单词可以作为 “abslute” 的谜底 : “aaaa”, “asas”, “able”
2 个单词可以作为"absoryz" 的谜底 : “aaaa”, “asas”
4 个单词可以作为"actresz" 的谜底 : “aaaa”, “asas”, “actt”, “access”
没有单词可以作为"gaswxyz" 的谜底,因为列表中的单词都不含字母 ‘g’。
本人思路:
1、用列表和集合对word去重,减小时间复杂度
2、遍历谜面,遍历谜底,判断谜底的所有字母是否都在谜面中
即使我觉得perfect,然力扣提交超时
def findNumOfValidWords(words, puzzles):answer_list = []words = [set(list(w)) for w in words]for p in puzzles:answer_count = 0first_str = p[0]for w in words:if first_str in w and all(n in p for n in w):answer_count += 1else:continueanswer_list.append(answer_count)return answer_list
注:
题目来源:力扣(LeetCode)
参考思路(太复杂了,试图理解中):
https://leetcode-cn.com/problems/number-of-valid-words-for-each-puzzle/solution/zhuang-tai-ya-suo-zi-ji-ti-jie-yi-dong-c-bdx8/
LeetCode日记_007_猜字谜相关推荐
- LeetCode 1178. 猜字谜(状态压缩+枚举二进制子集+哈希)
文章目录 1. 题目 2. 解题 1. 题目 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件, ...
- Leetcode 猜字谜
WechatIMG521.jpeg 题目描述 leetcode 第1178题:猜字谜 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如 ...
- leetcode 1178.猜字谜
leetcode 1178.猜字谜 题干 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件,那么 ...
- 记录一下leetcode:1178猜字谜
import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream;/*** leetcode ...
- leetcode 1178. 猜字谜(位运算)
外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件,那么它就可以算作谜底: 单词 word 中包含 ...
- 【刷题日记】leetcode-1178 猜字谜
目录 一.题目 - 猜字谜 二.解题 三.题解 一.题目 - 猜字谜 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 wo ...
- 算法--猜字谜(哈希表优化)
算法–猜字谜(哈希表优化) 元宵节的时候,力扣上的每日一题是这样的: 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 wo ...
- 100个小学生猜字谜大全及答案
100个小学生猜字谜大全及答案 1.字谜:山上还有山.猜一字,答案是:出 2.字谜:十张口,一颗心.猜一字,答案是:思 3.字谜:说它小,下边大,说它大,上边小.猜一字,答案是:尖 4.字谜:一只黑狗 ...
- 微信小程序:大红喜庆版UI猜灯谜又叫猜字谜
大家好给大家带来一款UI比较喜庆的猜灯谜小程序 大家看演示图的时候当然也是可以看得到那界面是多么的喜庆 而且新的一年也很快就来了,所以种种的界面可能都比较往喜庆方面去变吧 这款小程序搭建是免服务器和域 ...
最新文章
- 【计算机网络】网络安全 : 公钥密码体质 ( 公钥 - 加密密钥 | 私钥 - 解密密钥 | 与对称密钥体质对比 | 特点 | 数字签名引入 )
- linux efi不要boot目录,LINUX下EFIBOOTMGR的使用,删除UEFI主板多余启动项和添加启动项-Go语言中文社区...
- 其他类似GitBook的在线文档创作平台
- 资源系统建设初期数据质量管理
- Sql Server 查看所有存储过程或视图的位置及内容
- 23.IntelliJ IDEA 常用设置-1
- Android属性动画 PropertyValuesHolder
- elasticsearch x-pack license过期
- feign直接走熔断_SpringCloud微服务(03):Hystrix组件,实现服务熔断
- 合沟微服务怎么添加_微服务架构:动态配置中心搭建
- 图像处理六:预处理方法
- java实现复原IP地址_LeetCode 力扣 93. 复原IP地址
- 代码对比工具 mac
- Python学习 -元组和集合
- UML(thinking in uml 学习)--参与者和业务工人和涉众
- Android 如何更换系统字体
- DBPedia知识图谱详细介绍
- 可视化行程管理app_可视化流量:时间行程,扭矩和时间图
- @Autowired的原理简识
- PMBOK(第六版) 学习笔记 ——《第一章 引论》