判断字符串子序列

标题:判断字符串子序列 | 时间限制:1秒 | 内存限制:262144K | 语言限制:不限
给定字符串 target和 source, 判断 target 是否为 source 的子序列。
你可以认为 target 和  source 中仅包含英文小写字母。字符串 source可能会很长(长度 ~= 500,000),而 target 是个短字符串(长度 <=100)。
字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"abc"是"aebycd"的一个子序列,而"ayb"不是)。
请找出最后一个子序列的起始位置。



while True:
    try:
        s1, s2 = input(), input()
        idx, ans = 1, -1
        i = len(s1) - 1
        while i > -1:
            for j in range(len(s2) - idx, -1, -1):
                idx += 1
                if s1[i] == s2[j]:
                    if i == 0:
                        ans = j
                    break
            i -= 1
        print(ans)


    except:
        break


全部评论

相关推荐

12-13 20:26
浙江大学 Java
淬月星辉:把浙大的校名加大加粗,把校徽再贴出来,就OK了
点赞 评论 收藏
分享
11-19 18:44
已编辑
成都理工大学 Java
程序员花海:我面试过100+校招生,大厂后端面试不看ACM,竞赛经历含金量低于你有几份大厂实习 这个简历整体来看不错 可以海投
如何写一份好简历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务