#ABC122C. AC 计数

AC 计数

AC 计数

题目描述

给定一个由 ACGT 组成、长度为 NN 的字符串 SS。请回答以下 QQ 个询问。

  • 询问 ii1iQ1 \le i \le Q):给定整数 li,ril_i, r_i1li<riN1 \le l_i \lt r_i \le N)。考虑 SS 从开头数第 lil_i 个字符到第 rir_i 个字符(含两端)的子串。这个字符串中,AC 作为子串出现多少次?

输入格式

输入按以下格式从标准输入给出:

NN QQ
SS
l1l_1 r1r_1
::
lQl_Q rQr_Q

输出格式

输出 QQ 行。第 ii 行输出对询问 ii 的答案。

样例

8 3
ACACTACG
3 7
2 3
1 8
2
0
3
  • 询问 11SS 从开头数第 33 个字符到第 77 个字符的子串是 ACTAC。这个字符串中 AC 作为子串出现 22 次。
  • 询问 22SS 从开头数第 22 个字符到第 33 个字符的子串是 CA。这个字符串中 AC 作为子串出现 00 次。
  • 询问 33SS 从开头数第 11 个字符到第 88 个字符的子串是 ACACTACG。这个字符串中 AC 作为子串出现 33 次。

数据范围

  • 2N1052 \le N \le 10^5
  • 1Q1051 \le Q \le 10^5
  • SS 是长度为 NN 的字符串
  • SS 的每个字符都是 ACGT 中的某一个
  • 1li<riN1 \le l_i \lt r_i \le N

提示

字符串 TT 的子串是指从 TT 的开头和末尾去掉 00 个以上字符后得到的字符串。

例如,ATCODER 的子串包含 TCOATCODERATCODER、``(空字符串),不包含 AC

难度 普及
通过率
尝试 0
已通过 0
ID
1684
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签