#P16042. [Oni2023国家队选拔赛]Secvxor

[Oni2023国家队选拔赛]Secvxor

题目描述

给定一个长度为 NN 的正整数数组 AA

对于每个形如

Ai,Ai+1,,Aj(i<j)A_i,A_{i+1},\ldots,A_j\quad (i<j)

的连续子数组,如果端点 AiA_iAjA_j 的最大公约数大于 11,则计算该子数组的异或值:

AiAi+1Aj.A_i\oplus A_{i+1}\oplus\cdots\oplus A_j.

再将所有这些得到的子数组异或值继续做异或,最终得到一个数 BB

请计算 BB

输入格式

第一行包含整数 NN

第二行包含 NN 个正整数,表示数组 AA

输出格式

输出一个整数,表示 BB

数据范围

  • 1N1000001\le N\le 100000
  • 1Ai10000001\le A_i\le 1000000

子任务

子任务 分值 限制
1 9 1N5001\le N\le 500
2 12 1N50001\le N\le 5000
3 15 数组元素全为偶数
4 26 数组元素全为质数
5 38 无额外限制

样例

5
4 7 6 10 21
1

满足条件的连续子数组为:

(4, 7, 6)
(4, 7, 6, 10)
(7, 6, 10, 21)
(6, 10)
(6, 10, 21)

它们的异或值分别为 5,15,30,12,255,15,30,12,25,再次异或后得到 B=1B=1