【思路】月月查华华的手机

题目:牛客网 NC23053 月月查华华的手机

题目的大意是,给一个字符串A,以及N个字符串Bi,对于每一个Bi,询问其是否A的子序列。

错误1:混淆子序列和子串

本蒟蒻刚复习KMP,看到这道题就想套,却连样例都过不了,后来发现问的是子序列而不是子串。

子序列和子串的最大区别是,子串一定要连续的,而子序列可以不连续。例如,字符串"aeaijgoaeljo",它的子序列可以是"aea",也可以是"aio";但是"aio"不是它的子串。

思路1:暴力求解

对于每一个Bi,都遍历一次A寻找Bi中的每一个字母。用a维护在字符串A中遍历到的位置,用b维护在字符串Bi中正在寻找的位置。

例如,A="noiauw"    B1="oaw"

刚开始,a=0(指向n),b=0(指向o)。

然后保存b不动,a一直++,直到找到A中的第一个字母"o"为止,这时b就要++,表示要在A中寻找B的下一个字母的位置了

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值