CF631D Messenger
题目描述
给定两个字符串 $s,t$,求 $t$ 在 $s$ 中出现了几次。
这两个字符串可能会很长,所以字符串被分成很多块,其中 $s$ 被分成 $n$ 块,$t$ 被分成 $m$ 块。每一块 $(l,c)$ 代表 $l$ 个 $c$ 字符连接在一起组成的字符串。即 $(2,$`a`$)=$`aa`。一个字符串 $s$ 会被表示成一个序列 $((l_1,c_1),(l_2,c_2),\dots,(l_n,c_n))$。在输入中字符串 `l-c` 代表 $(l,c)$。
注意到字符串的表示方式不是唯一的,例如 $((1,$`a`$),(3,$`a`$))=((2,$`a`$),(2,$`a`$))=$`aaaa`。
输入格式
第二行有 $n$ 个块,表示字符串 $s$。
第三行有 $m$ 个块,表示字符串 $t$。
输出格式
一行一个正整数表示答案。
说明/提示
$1\le n,m\le 2\times 10^5,1\le l_i\le10^6$。