题库 C++/C语言题库 题目列表 C语言等级考试五级真题:通配符匹配。给定一个字符串s...
问答题

C语言等级考试五级真题:通配符匹配。

给定一个字符串s和一个字符模式p,请实现一个支持'?'和'*'的通配符匹配功能。

其中‘?’可以匹配任何单个字符,如‘a?c’可以成功匹配‘aac’,‘abc’等字符串,但不可匹配‘ac’,‘aaac’等字符串 。

‘*’ 可以匹配任意长度字符串(包括空字符串),如‘a*c’可以成功匹配‘ac’,‘abdc’,‘abc’,‘aaac’等字符串,但不可匹配‘acb’,‘cac’等字符串。

两个字符串完全匹配才算匹配成功。

时间限制:2000

内存限制:262144

输入

输入为一个数字n表示测试字符串与字符模式对数,换行。(n ≤ 30) 后续2n行为每组匹配的s与p,每行字符串后换行。 s 非空,只包含从 a-z 的小写字母。 p 非空,只包含从 a-z 的小写字母,以及字符 ? 和 *。 字符串s和p的长度均小于50

输出

每一组匹配串匹配成功输出‘yes’,否则输出‘no’。

样例输入

3
abc
abc
abc
a*c
abc
a??c

样例输出

yes
yes
no
题目信息
2022年 五级 C语言等级考试真题
-
正确率
0
评论
144
点击