通配符匹配

测试数据来自 system/1172

作业已超过截止时间,您无法递交本题目。

时间限制:1秒  内存限制:256M


【问题描述】

  通配符是一类键盘字符,当我们不知道真正字符或者不想键入完整名字时,常常使用通配符代替一个或多个真正字符。通配符有问号(?)和星号( * )等,其中,“?”可以代替一个字符,而“*”可以代替零个或多个字符。
  你的任务是,给出一个带有通配符的字符串和一些不带通配符的字符串,判断他们是否能够匹配。
  例如,1?456 可以匹配 12456、13456、1a456,但是却不能够匹配23456、1aa456;
     2*77?8可以匹配 24457798、237708、27798。

【输入格式】

  第一行是一个由英文字母、数字符号上述通配符组成的字符串。
  第二行包含一个整数 \(N\) ,表示字符串个数。
  接下来 \(N\) 行,每行为一个是由英文字母、数字符号组成的符串。

【输出格式】

  如果两者可以匹配,就输出“YES”,否则输出“NO”

【输入输出样例】

 Input

1*456?
3
11111114567
100456
1456s

 Output

YES
NO
YES

【数据限制】

  \(N \le 10\),所有字符串长度不超过2000。

【来源】

  Mr.he

匹配类动态规划练习题

未认领
状态
已结束
题目
10
开始时间
2025-03-14 00:00
截止时间
2025-04-19 23:59
可延期
24.0 小时