CF589C.Polycarp's Masterpiece

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

受乔安娜·罗琳及其《哈利·波特》幻想系列的成功启发,Polycarp 决定创作自己的杰作。他已经为他未来的畅销书取好了名字 —— 字符串 ss。

Polycarp 在撰写主线故事时遇到了不少困难,于是决定成为文学界的“马列维奇”,创作属于自己的“黑方块”。

Polycarp 用了 nn 天来写作,每天写一章。他首先写下了字符串 ss。在接下来的 nn 天里,每一天他都执行以下步骤:在第 ii 天,他把当前文本 tt 的第 kik_i 次循环移位的结果追加到右边。也就是说,每天他的作品内容长度都会翻倍。

一个字符串 rr 的循环移位定义为将 rr 最后的一个字符移动到字符串的最前面。例如,“masterpiece”的一次循环移位是“emasterpiec”。字符串 rr 的第 ii 次循环移位是指对 rr 连续执行 ii 次循环移位后的结果(比如“masterpiece”的第三次循环移位是“ecemasterpi”)。

经过 nn 天的辛勤创作,Polycarp 终于写下了一篇非常长的文本,堪称付出的努力。然而,这部作品内容实在太长,几乎无法对其进行任何分析。

请你帮助 Polycarp 回答 mm 个关于他作品的查询:对于第 jj 个查询,找出在自己的巨著的第 ljl_{j} 位到第 rjr_{j} 位(含)构成的子串中,字母 cjc_{j} 出现了多少次。

输入格式

第一行给出巨著的名字 —— 字符串 ss。ss 仅包含小写拉丁字母,长度在 11 到 100100 之间。

第二行包含两个整数 nn 和 mm (1≤n≤105, 1≤m≤105)(1 \le n \le 10^5,\, 1 \le m \le 10^5) —— Polycarp 写作的天数和查询的个数。

下一行包含 nn 个整数 kik_i (0≤ki≤100)(0 \le k_i \le 100) —— 第 ii 天所使用的循环移位次数。

接下来的 mm 行,每行包含两个整数 ljl_j、rjr_j 和一个小写拉丁字母 cjc_j —— 每个查询的描述。对于每个查询,你需要统计在巨著的第 ljl_j 个位置到第 rjr_j 个位置(含)组成的子串中,字母 cjc_j 出现了多少次。位置从 11 开始编号。保证 1≤lj≤rj≤10181 \leq l_j \leq r_j \leq 10^{18} 且 ljl_j 和 rjr_j 都不会大于作品实际长度。

输出格式

输出 mm 行,第 jj 行表示第 jj 个查询的答案。

输入输出样例

  • 输入#1

    masterpiece
    1 3
    3
    1 22 m
    9 14 e
    8 15 p
    

    输出#1

    2
    4
    0
    
  • 输入#2

    polycarp
    1 2
    0
    2 15 p
    1 16 p
    

    输出#2

    2
    4
    

说明/提示

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页