AT_abc452_d [ABC452D] No-Subsequence Substring
Description
英小文字からなる文字列 $ S,T $ が与えられます。
$ S $ の空でない部分文字列 $ s $ のうち、 $ T $ を(連続するとは限らない)部分列として**含まない**ものの個数を求めてください。
ここで、 $ S $ の $ 2 $ つの部分文字列は、取り出した箇所が異なれば文字列として等しくても区別するものとします。
部分文字列とは 文字列 $ X $ の部分文字列とは、 $ X $ の先頭から $ 0 $ 文字以上、末尾から $ 0 $ 文字以上を削除して得られる文字列のことを指します。 部分列とは 文字列 $ X $ の部分列とは, $ X $ の要素を $ 0 $ 個以上選んで削除し,残った要素を元の順序を保って並べた文字列のことを指します.
Input Format
入力は以下の形式で標準入力から与えられる。
> $ S $ $ T $
Output Format
答えを出力せよ。
Explanation/Hint
### Sample Explanation 1
例えば、 $ S $ の $ 1 $ 文字目から $ 3 $ 文字目までからなる部分文字列 `abr` は $ T $ を部分列として含みません。 他にも、`k`( $ S $ の $ 5 $ 文字目のみ)や `akada`( $ S $ の $ 4 $ 文字目から $ 8 $ 文字目)などの $ 51 $ 個の部分文字列が条件を満たします。
文字列 `abr` は $ S $ の $ 1 $ 文字目から $ 3 $ 文字目までからなる部分文字列としても $ S $ の $ 8 $ 文字目から $ 10 $ 文字目までからなる部分文字列としても得ることができますが、文字列から取り出す箇所が異なるため区別して数えることに注意してください。
### Sample Explanation 2
$ S $ の空でない部分文字列は、すべて $ T $ を部分列として含みます。
よって、条件を満たす部分文字列は存在しないため、 $ 0 $ を出力してください。
### Constraints
- $ S $ は英小文字からなる文字列
- $ |S| $ を $ S $ の長さとして、 $ 1\le |S|\le2\times10 ^ 5 $
- $ T $ は英小文字からなる文字列
- $ |T| $ を $ T $ の長さとして、 $ 1\le |T|\le50 $