Logo Universal Online Judge

UOJ

时间限制:1 s 空间限制:512 MB
统计

题目描述

给定一正 $n$ 边形。顶点逆时针依次编号为 $1 \sim n$。顶点 $i$ 有 $0$ 或 $1$ 的点权 $a_i$。每对顶点 $(i,j)$ 之间都有连边,边权为 $(a_i \operatorname{xor} a_j)$,其中 $\rm xor$ 为按位异或运算。

$m$ 次操作,每次给定整数 $x$。你需要将 $a_x$ 取反,即 $0$ 变 $1$,$1$ 变 $0$(同时也会改变有关连边的边权)。

在初始时和每次操作后,输出所有三边边权相等的等腰三角形数量,这里的三角形指的是三个顶点都是此正 $n$ 边形顶点的三角形,两个三角形不同当且仅当它们的三个顶点的编号组成的集合不相同。

输入格式

第 $1$ 行包含两个整数 $n,m$。

第 $2$ 行包含 $n$ 个整数,描述数列 $a$。

第 $3$ 行到第 $m+2$ 行,每行包含一个整数 $x$,描述一次操作。

输出格式

输出共 $m+1$ 行。每行一个整数,表示答案。

样例

样例输入1
6 2
1 0 1 0 1 0
5
6
样例输出1
2
2
0

其余样例在下发文件中。

数据范围

对于 $100\%$ 的数据,满足 $3\le n \le 3\times 10^5$,$0 \le m \le 3\times 10^5$,$1 \le x \le n$。

$$ \def\arraystretch{1.5} \begin{array}{|c|c|c|c|c|} \hline \textbf{Subtask} & \textbf{\textsf{分值}} & {{n\le}} &{{m\le}} \cr\hline 1 & 5 & 3 & 100 \cr\hline 2 & 5 & 10^3 & 0 \cr\hline 3 & 10 & 10^3 & 10^3 \cr\hline 4 & 10 & 10^5 & 0 \cr\hline 5 & 30 & 10^5 & 10^5 \cr\hline 6 & 40 & 3\times 10^5 & 3\times 10^5 \cr\hline \end{array} $$

样例

link