题目信息:
外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧。
字谜的迷面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_猜字谜相关推荐

  1. LeetCode 1178. 猜字谜(状态压缩+枚举二进制子集+哈希)

    文章目录 1. 题目 2. 解题 1. 题目 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件, ...

  2. Leetcode 猜字谜

    WechatIMG521.jpeg 题目描述 leetcode 第1178题:猜字谜 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如 ...

  3. leetcode 1178.猜字谜

    leetcode 1178.猜字谜 题干 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件,那么 ...

  4. 记录一下leetcode:1178猜字谜

    import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream;/*** leetcode ...

  5. leetcode 1178. 猜字谜(位运算)

    外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 word 符合下面两个条件,那么它就可以算作谜底: 单词 word 中包含 ...

  6. 【刷题日记】leetcode-1178 猜字谜

    目录 一.题目 - 猜字谜 二.解题 三.题解 一.题目 - 猜字谜 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 wo ...

  7. 算法--猜字谜(哈希表优化)

    算法–猜字谜(哈希表优化) 元宵节的时候,力扣上的每日一题是这样的: 外国友人仿照中国字谜设计了一个英文版猜字谜小游戏,请你来猜猜看吧. 字谜的迷面 puzzle 按字符串形式给出,如果一个单词 wo ...

  8. 100个小学生猜字谜大全及答案

    100个小学生猜字谜大全及答案 1.字谜:山上还有山.猜一字,答案是:出 2.字谜:十张口,一颗心.猜一字,答案是:思 3.字谜:说它小,下边大,说它大,上边小.猜一字,答案是:尖 4.字谜:一只黑狗 ...

  9. 微信小程序:大红喜庆版UI猜灯谜又叫猜字谜

    大家好给大家带来一款UI比较喜庆的猜灯谜小程序 大家看演示图的时候当然也是可以看得到那界面是多么的喜庆 而且新的一年也很快就来了,所以种种的界面可能都比较往喜庆方面去变吧 这款小程序搭建是免服务器和域 ...

最新文章

  1. 【计算机网络】网络安全 : 公钥密码体质 ( 公钥 - 加密密钥 | 私钥 - 解密密钥 | 与对称密钥体质对比 | 特点 | 数字签名引入 )
  2. linux efi不要boot目录,LINUX下EFIBOOTMGR的使用,删除UEFI主板多余启动项和添加启动项-Go语言中文社区...
  3. 其他类似GitBook的在线文档创作平台
  4. 资源系统建设初期数据质量管理
  5. Sql Server 查看所有存储过程或视图的位置及内容
  6. 23.IntelliJ IDEA 常用设置-1
  7. Android属性动画 PropertyValuesHolder
  8. elasticsearch x-pack license过期
  9. feign直接走熔断_SpringCloud微服务(03):Hystrix组件,实现服务熔断
  10. 合沟微服务怎么添加_微服务架构:动态配置中心搭建
  11. 图像处理六:预处理方法
  12. java实现复原IP地址_LeetCode 力扣 93. 复原IP地址
  13. 代码对比工具 mac
  14. Python学习 -元组和集合
  15. UML(thinking in uml 学习)--参与者和业务工人和涉众
  16. Android 如何更换系统字体
  17. DBPedia知识图谱详细介绍
  18. 可视化行程管理app_可视化流量:时间行程,扭矩和时间图
  19. @Autowired的原理简识
  20. PMBOK(第六版) 学习笔记 ——《第一章 引论》

热门文章

  1. C语言中 强制类型转换
  2. asp.net如何实现迅雷下载功能
  3. fopen函数mode参数详解
  4. 写一个画螺旋旋转的花朵python代码
  5. 双击背面截图_怎么双击背面截图
  6. JavaScript简餐——原型链是什么?
  7. 记录解决 <应用程序无法正常启动(0xc0000142) > 的过程
  8. 苹果8参数配置_苹果11和苹果12的区别是什么?对比配置参数,哪个更值得购买?...
  9. 【傅里叶变换与FFT】
  10. 大部分JavaWeb 乱码问题都在这里了