#abc452d. No-Subsequence Substring

No-Subsequence Substring

题目描述

给定由小写英文字母组成的字符串 SSTT

SS 的所有非空子串中,不包含 TT 作为(不一定连续的)子序列的子串个数。

这里,SS 的两个子串只要取出的位置不同,即使字符串内容相同也视为不同子串。

子串:字符串 XX 的子串是指从 XX 开头删除 00 个以上字符、从末尾删除 00 个以上字符后得到的字符串。

子序列:字符串 XX 的子序列是指从 XX 中删除 00 个以上元素后,剩余元素按原顺序排列得到的字符串。

输入格式

输入从标准输入以以下格式给出:

SS TT

输出格式

一行,输出答案。

输入输出样例 #1

输入 #1

abrakadabra
aba

输出 #1

51

输入输出样例 #2

输入 #2

aaaaa
a

输出 #2

0

输入输出样例 #3

输入 #3

rdddrdtdcdrrdcredctdordoeecrotet
dcre

输出 #3

263

说明/提示

样例解释 1

例如,SS 的第 11 个字符到第 33 个字符组成的子串 abr 不包含 TT 作为子序列。此外,k(仅 SS 的第 55 个字符)和 akadaSS 的第 44 个字符到第 88 个字符)等共 5151 个子串满足条件。

注意:abr 既可以作为 SS 的第 1133 个字符的子串,也可以作为第 881010 个字符的子串,但由于取出位置不同,它们被视为不同的子串进行计数。

样例解释 2

SS 的所有非空子串都包含 TT 作为子序列。因此没有满足条件的子串,输出 00

数据范围

  • SS 由小写英文字母组成

  • S|S|SS 的长度,满足 1S2×1051 \le |S| \le 2 \times 10^5

  • TT 由小写英文字母组成

  • T|T|TT 的长度,满足 1T501 \le |T| \le 50