T683915 decipher

题目背景

乌尔里希组长在"暴雨"中采集到了一组数据并传输了过来, 留在拉普拉斯科算中心的哑谜和你负责接收这组数据

题目描述

乌尔里希传回来的数据为一个长度为 $n$ 的字符串 $s$, 其只含有 $x$, $y$, $z$ 三种字母, 设 $s_i$ 为 $s$ 的第 $i$ 个字符 但不幸的是, 受"暴雨"影响, 部分数据产生了改变, 为了知道数据的改变过程, 哑谜决定暴力模拟改变的情景: 哑谜将进行 $m$ 操作, 每次会给出一个整数 $x$, 表示交换 $s_x$ 和 $s_{x+1}$ 两个字符 你需要在哑谜每次操作后破译当前的数据, 即统计出字符串 $s$ 中有多少个子序列为 $xyz$ ,第 $i$ 次破译得到的答案记为 $ans_i$ * 一个字符串 $t$ 是字符串 $s$ 的子序列,当且仅当可以从 $s$ 中删除若干个字符(可以为 $0$ 个),将剩下的字符按在 $s$ 中的顺序依次相接得到 $t$ 最后, 你需要告诉哑谜所有 $ans_i$ 的异或和

输入格式

输入第一行为两个整数 $n$, $m$ 第二行为一个长度为 $n$ 的字符串 $s$ 第 $3$ ~ $m+2$ 行, 每行一个整数 $x$

输出格式

一行一个整数表示你的答案

说明/提示

**样例2解释** : 初始时 $s=xxxyyzzz$ * 第一次操作交换 $s_4$ 和 $s_5$,此时 $s=xxxyyzzz$,$xyz$ 作为子序列出现了 $18$ 次。 第二次操作交换 $s_3$ 和 $s_4$,此时 $s=xxyxyzzz$,$xyz$ 作为子序列出现了 $15$ 次。 第三次操作交换 $s_5$ 和 $s_6$, 此时 $s=xxyxzyzz$,$xyz$ 作为子序列出现了 $12$ 次。 $18$ ^ $15$ ^ $12$ = $17$ ### 数据范围 | 测试点编号 | $n$ | $m$ | 特殊性质 | |:-:|:-:|:-:|:-:| | $1$ | $\le 3$ | $\le 10^3$ | - | | $2$, $3$ | $\le 10^3$ | $\le 10^3$ | $A, B$ | | $4$ ~ $6$ | $\le 10^4$ | $\le 10^4$ | $A, B$ | | $7$ ~ $9$ | $\le 10^6$ | $\le 10^2$ | $A$ | | $10$~ $12$| $\le 10^4$ | $\le 10^6$ | - | | $13$ ~ $20$ | $\le 10^6$ | $\le 10^6$ | - | 特殊性质 $A$ : 保证存在一个测试点只含有一个 $x$\ 特殊性质 $B$ : 保证存在一个测试点只含有一个 $y$ 保证对于所有的数据 $1\le x < n$ , $n \ge 3$ , $m \ge 1$ 下发的大样例 $1$ 满足特殊性质 $A$