23蔚来前端B卷笔试编程题
1. 一个数最多可以由多少个质数相加得到?
质数可以重复, 选最小的就是2 和 3, Math.floor(n / 2)秒了。脑筋急转弯?
2. 一个目标字符串,长度[1,1e5], 敏感词数组,长度[1,1e5],每个敏感词长度[2,10],求敏感词数量。
正常做只能a60%,敏感词长度短但是数量多,从2到10,按不同的滑动窗口的宽度去扫掠目标字符串,将遇到的所有子串的数量记录到一个map中。最后遍历一边敏感词数组,累加结果。空间换时间。
质数可以重复, 选最小的就是2 和 3, Math.floor(n / 2)秒了。脑筋急转弯?
2. 一个目标字符串,长度[1,1e5], 敏感词数组,长度[1,1e5],每个敏感词长度[2,10],求敏感词数量。
正常做只能a60%,敏感词长度短但是数量多,从2到10,按不同的滑动窗口的宽度去扫掠目标字符串,将遇到的所有子串的数量记录到一个map中。最后遍历一边敏感词数组,累加结果。空间换时间。
全部评论
相关推荐
点赞 评论 收藏
分享