[ABC372] C - Count ABC Again

C - Count ABC Again

Time Limit: 2 sec / Memory Limit: 1024 MB

分数: 350 分

题面

给定一个长度为 的字符串 。同时给定 个查询,你需要按顺序处理这些查询。

个查询如下:

  • 给定整数 和字符 ,将 的第 个字符替换为 。然后,打印字符串 中子串 ABC 出现的次数。

这里,子串 是通过从 的开头删除零个或多个字符,然后从结尾删除零个或多个字符得到的字符串。
例如,ababc 的子串,但ac 不是 abc 的子串。

限制条件

  • 是长度为 的字符串,由大写英文字母组成。
  • 是大写英文字母。

输入

输入从标准输入给出,格式如下:






输出

输出 行。第 应该包含第 个查询的答案。


输入样例 1

7 4
ABCDABC
4 B
3 A
5 C
4 G

输出样例 1

2
1
1
0

处理每个查询后, 变为以下字符串。

  • 第一个查询后: ABCBABC。在该字符串中,ABC 作为子串出现两次。
  • 第二个查询后: ABABABC。在该字符串中,ABC 作为子串出现一次。
  • 第三个查询后: ABABCBC。在该字符串中,ABC 作为子串出现一次。
  • 第四个查询后: ABAGCBC。在该字符串中,ABC 作为子串出现零次。

输入样例 2

3 3
ABC
1 A
2 B
3 C

输出样例 2

1
1
1

有一些情况下,通过处理查询, 不会改变。


输入样例 3

15 10
BBCCBCACCBACACA
9 C
11 B
5 B
11 B
4 A
8 C
8 B
5 B
7 B
14 B

输出样例 3

0
0
0
0
1
1
2
2
1
1

0条搜索结果。