网站页面
当前课程
成员
General
主题 1
主题 2
主题 4
主题 5
主题 6
主题 7
主题 8
主题 9
主题 10
主题 11
主题 12
主题 13
主题 14
主题 15
主题 16
主题 17
主题 18
主题 19
主题 20
子序列
成绩 | 开启时间 | 2014年09月19日 星期五 10:08 | |
折扣 | 0.8 | 折扣时间 | 2014年09月26日 星期五 10:08 |
允许迟交 | 是 | 关闭时间 | 2014年09月26日 星期五 10:08 |
输入文件 | subsequence.in | 输出文件 | subsequence.out |
【题目描述】
如果存在一个数列C满足下列条件,我们就认为字符串A为字符串B的一个子序列:
(1)数列C恰好有length(A)个数;
(2)0<=C[0]<C[1]<...<C[length(A)-1]<length(B);
(3)对于每一个i,有A[i]=B[C[i]](0<=i<length(A))。
举个例子,"abcd"是"aaaaaabbbcd"的子序列,而"abcd"不是"aaaaacccdb"的子序列,当然了,任意一个字符串都是它本身的一个子序列。
在本题中,给你一个较长的字符串A,和许多较短的字符串Bi,你需要写一个效率比较高的程序告诉我们Bi是否为A的子序列。
【输入格式】
输入文件的第一行为字符串A,第二行有一个整数M(0<M<=10000),表示短字符串Bi的个数,接下来有M行,每行有一个字符串Bi。
字符串A的长度不超过100000,Bi的长度不超过50,所有的字符串都至少有一个字母,所有的字母均为小写。
【输出格式】
输出有M行,每行含义为:对于每一个Bi,如果它是A的子序列则输出"Yes",否则输出"No"。
【样例输入】
subsequence 2 sequence bus
【样例输出】
Yes No
【提示】
在此键入。
【来源】
在此键入。