B. 2025夏-B-2 公共子序列

    传统题 400ms 64MiB

2025夏-B-2 公共子序列

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

学习动态规划算法时遇到经典的最长公共子序列问题是这样的:给定序列 X={x1,x2,,xn}X=\{ x_1, x_2, \cdots , x_n\},其子序列是从该序列中删去若干元素后得到的序列。一个包含 nn 个元素的序列有 2n2^n 个子序列。给定两个序列 X={x1,x2,,xn}X=\{ x_1, x_2, \cdots , x_n\}Y={y1,y2,,ym}Y=\{ y_1, y_2, \cdots , y_m\},请设计算法找出 XXYY 的一个最长公共子序列。

本题并不是要你给出这个问题的解,而是帮助判题的老师解决一题多解的问题 —— 这个问题的解可能是不唯一的。例如给定 catcgagtaccgtca,最长公共子序列的长度是 4,tcga 是一个解,ctca 也是一个解。对学生输出的任意一个结果,请你判断这个结果是否正确。

输入格式

输入第一行给出 2 个正整数:nn100\le 100)为学生提交的答案数量;ll103\le 10^3)为老师的标准答案给出的最长公共子序列的长度。 随后 2 行分别给出两个长度不超过 10310^3、仅由小写英文字母组成的非空字符串 XXYY。 最后 nn 行,每行给出一位学生提交的公共子序列,同样是长度不超过 10310^3、仅由小写英文字母组成的非空字符串。

输出格式

对每位学生提交的字符串,如果其的确是 XXYY 的公共子序列,且长度等于 ll,即判定为正确,在一行中输出 yes;否则输出 no

注意:老师给出的标准答案 ll 不一定正确,但那不重要。你的任务只是按上述标准进行判断,不需要验证标准答案的正确性。

样例

5 4
catcga
gtaccgtca
tcga
ctca
tca
ctga
tcgca
yes
yes
no
no
no

限制

600 ms, 512 MB for each test case.

PAT2025夏季重现赛

未参加
状态
已结束
规则
IOI
题目
9
开始于
2025-7-13 14:00
结束于
2025-7-13 17:30
持续时间
3.5 小时
主持人
参赛人数
45