CF1023A.Single Wildcard Pattern Matching

传统题 时间 2000 ms 内存 256 MiB 6 尝试 54 已通过 10 标签

Single Wildcard Pattern Matching

题目描述

给定两个小写英文单词 s,ts,t,其中 ss 包含还不多于一个的 *ss 的长度为 nn,而 tt 的长度为 mm

ss 中的 * 可以被替换为任意小写字母串(可以是空串),但其他字母不能被更改或者调换顺序。如果将 * 替换为一个任意小写字母串之后,s=ts=t,那么我们称 s,ts,t 是匹配的。

例如,如果给定的模式字符串为 s=s = "aba*aba",那么以下字符串可以与它成功匹配:"abaaba""abacaba""abazzzaba"

但以下字符串不能与它匹配:"ababa""abcaaba""codeforces""aba1aba""aba?aba"

如果给定的目标字符串 tt 与模式字符串 ss 匹配,则输出 "YES",否则输出 "NO"

输入格式

第一行输入两个整数 n,mn,m,分别表示 sstt 的长度。

第二行输入字符串 ss,保证 ss 中只含有小写字母和不多于一个的 *

第三行输入字符串 tt,保证 tt 中只含有小写字母。

输出格式

如果 sstt 是匹配的,那么输出 YES,否则输出 NO

说明/提示

对于 100%100\% 的数据,1n,m2×1051\le n,m\le2\times10^5

样例

6 10
code*s
codeforces
YES
6 5
vk*cup
vkcup
YES
1 1
v
k
NO
9 6
gfgf*gfgf
gfgfgf
NO

在线编程 IDE

建议全屏模式获得最佳体验