Duplicate Strings
题号:NC230509
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给出仅包含小写字母的字符串字符串 sq 次操作,每次操作有两种类型:
1. 把当前的字符串 s 复制 k 次之后接在自己后面。
2. 询问当前字符串 s 中某个字符 c 出现的次数,答案对 取模。

请你对每个第二种类型的操作输出答案。

输入描述:

第一行两个正整数 n,qn 表示字符串长度。

接下来一行一个字符串 s,仅包含小写字母。

接下来 q 行,每行第一个正整数 op 表示操作类型。

- ,则后接一个整数 k,表示把 s 复制 k 次后接在自己后面。
- ,则后接一个小写字母 c,表示求 sc 的出现次数。

输出描述:

对每个询问操作输出答案。
示例1

输入

复制
3 3
aba
1 5
2 a
2 b

输出

复制
12
6

说明

第一次操作后,字符串变为 abaabaabaabaabaaba。