B4396 [蓝桥杯青少年组国赛 2025] 第一题
题目背景
洛谷的试题为民间回忆版,仅保证题意相同。试题呈现形式、样例、数据范围可能存在差异。
题目描述
给你两个字符串 $S$ 和 $T$。你需要找出 $S$ 中有多少个**连续子串**,能够与字符串 $T$ 相匹配。
匹配规则如下:
1. 进行匹配的 $S$ 的子串,其长度必须与 $T$ 的长度完全相同。
2. 对于字符串 $T$ 中的 `?` 字符,它可以匹配 $S$ 子串中对应位置的**任意**字符。
3. 对于字符串 $T$ 中的字母(`a, b, A, B`),它可以与 $S$ 子串中对应位置的字母进行**对应字母但是大小写不同**的匹配。例如,`a` 可以匹配 `A`(但是不能匹配 `a`),`B` 可以匹配 `b`。
请你计算出 $S$ 中总共有多少个这样的匹配子串。
输入格式
输入两行。
第一行输入字符串 $S$,保证只包含 `a,b,A,B` 这四种字符。
第二行输入字符串 $T$,保证只包含 `a,b,A,B,?` 这五种字符。
输出格式
输出一个整数,表示 $S$ 中能与 $T$ 匹配的子串数量。
说明/提示
对于 100% 的数据,$1 \le |T| \le |S| \le 1000$。