CF400E Inna and Binary Logic

题目描述

Inna 厌倦了关于女性逻辑的笑话,于是她开始使用二进制逻辑。 Inna 有一个包含 $n$ 个元素的数组 $a_{1}[1],a_{1}[2],...,a_{1}[n]$。女孩喜欢用她的二进制逻辑来训练自己,因此她会完成一个包含 $n$ 个阶段的练习:在第一阶段,Inna 将数组 $a_{1}$ 的所有数字写出来;在第 $i$ 阶段($i \geq 2$),她会写出数组 $a_{i}$ 的所有元素。该数组包含 $n-i+1$ 个整数;数组 $a_{i}$ 的第 $k$ 个元素定义如下:$a_{i}[k]=a_{i-1}[k] \text{ AND } a_{i-1}[k+1]$。这里 AND 表示按位二进制与操作。 Dima 决定检验 Inna 的能力。他让 Inna 改变数组,完成该练习,并说出这次练习中她写下的所有元素之和。 请帮助 Inna 回答这些问题!

输入格式

第一行包含两个整数 $n$ 和 $m$,即数组 $a_{1}$ 的大小和 Dima 的问题数;$1 \leq n, m \leq 10^{5}$。 第二行包含 $n$ 个整数 $a_{1}[1],a_{1}[2],...,a_{1}[n]$,表示初始数组元素,$0 \leq a_{i} \leq 10^{5}$。 接下来的 $m$ 行每行包含两个整数,表示 Dima 的一个问题。每个问题包括两个整数 $p_{i}, v_{i}$,$1 \leq p_{i} \leq n; 0 \leq v_{i} \leq 10^{5}$。在解决该问题时,Inna 应将 $a_{1}[p_{i}]$ 变为 $v_{i}$,然后执行上述的练习。请注意,改动会从一个问题延续到下一个问题。

输出格式

对于每个问题,输出 Inna 的答案,每行一个。

说明/提示

由 ChatGPT 5 翻译