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$。