#P1630. 回文树

回文树

题目描述

现在给你一个按层序遍历顺次编号 1,2,...,𝑛1,2,...,𝑛 的完全二叉树。初始时,二叉树上每个节点初始都有一个字母。

接下来会有 𝑞𝑞 次操作,每次操作修改一个节点上的字母。

你需要回答每次修改完成后,二叉树上有多少节点,其子树内的字符集可以经过重新排列形成回文串。

保证所有出现的字母均为小写字母。

输入格式

第一行两个正整数 𝑛,𝑞𝑛,𝑞,表示完全二叉树的节点数量和操作次数,1n,q1051\le n,q\le 10^5

接下来一行一个长度为 𝑛𝑛 的字符串,第 𝑖𝑖 个字符表示第 𝑖𝑖 个节点上的初始字母。 接下来 𝑞𝑞 行,每行一个正整数 𝑥𝑥 一个字符 𝑐h𝑐ℎ,表示将节点 𝑥𝑥 上的字母修改为 𝑐h𝑐ℎ

输出格式

先输出一行一个整数表示初始有几个节点,其子树内的字符集可以经过重新排列形成回文串。

之后对于每个修改,输出一行一个整数表示当前有多少节点,其子树内的字符集可以经过重新排列形成回文串。

4 2
aabc
1 b
2 c
2
2
4

数据范围/提示

样例 22附件文件