P4060 [Code+#1] 可做题

题目描述

qmqmqm 希望给 sublinekelzrip 出一道可做题。于是他想到了这么一道题目:给一个长度为 $n$ 的非负整数序列 $a_i$,你需要计算其异或前缀和 $b_i$,满足条件 $b_1=a_1,b_i=b_{i-1}\operatorname{xor}a_i(i \geq 2)$。 但是由于数据生成器出现了问题,他生成的序列 $a$ 的长度特别长,并且由于内存空间不足,一部分 $a_i$ 已经丢失了,只剩余 $m$ 个位置的元素已知。现在 qmqmqm 找到你,希望你根据剩余的 $a_i$,计算出所有可能的 $a$ 序列对应的 $b$ 序列中 $\sum_{i=1}^n b_i$ 的最小值。

输入格式

输入第一行两个非负整数 $n,m$,分别表示原始序列 $a$ 的长度及剩余元素的个数。 之后 $m$ 行,每行 $2$ 个数 $i,a_i$,表示一个剩余元素的位置和数值。

输出格式

输出一个整数表示可能的最小值。

说明/提示

### 样例解释 已知的 $a$ 序列为:$X,X,7,0,0$,其中 $X$ 表示这个位置丢失了。一种可能的 $a$ 序列为 $0,7,7,0,0$,对应的 $b$ 序列为 $0,7,0,0,0$,和最小为 $7$。可以证明不存在和更小的情况。 ::cute-table{tuack} |测试点编号|$n$|$m$|已知的 $a_i$| |:-:|:-:|:-:|:-:| |$1$|$n=2$|$m=1$|$0\le a_i\le 10^9$| |$2$|$1\le n\le10^9$|$m=0$|^| |$3$|$1\le n\le10^5$|$m=n$|^| |$4$|$1\le n\le5$|$0\le m\le n$|$0\le a_i\le 5$| |$5$|^|^|^| |$6$|$1\le n\le10^5$|^|$0\le a_i\le1$| |$7$|^|^|^| |$8$|^|^|$0\le a_i\le10$| |$9$|^|^|^| |$10$|^|^|^| |$11$|$1\le n\le10^9$|$0\le m\le\min\{n,10^5\}$|$0\le a_i\le1$| |$12$|^|^|^| |$13$|^|^|$0\le a_i\le10$| |$14$|^|^|^| |$16$|$1\le n\le10^6$|^|$0\le a_i\le10^9$| |$17$|^|^|^| |$18$|$1\le n\le10^9$|^|^| |$19$|^|^|^| |$20$|^|^|^| 注意未知的 $a_i$ 可以超过已知 $a_i$ 的范围。 保证输入中所有的 $i$ 不同,且满足 $1 \leq i \leq n$。 来自 CodePlus 2017 11 月赛,清华大学计算机科学与技术系学生算法与竞赛协会 荣誉出品。 Credit:idea/卢政荣 命题/卢政荣 验题/何昊天 Git Repo:https://git.thusaac.org/publish/CodePlus201711 感谢腾讯公司对此次比赛的支持。