#CF1582F2. 科尔涅耶维奇与异或(困难版)

科尔涅耶维奇与异或(困难版)

科尔涅耶维奇与异或(困难版)

  • 时间限制:1.5 秒
  • 内存限制:512 MiB

题目描述

给定长度为 nn 的非负整数序列 aa。求所有严格递增子序列(允许为空)的元素异或和组成的集合。

输入格式

第一行包含整数 nn,第二行包含 nn 个整数 aia_i。

输出格式

第一行输出可达异或值的数量。第二行按从小到大的顺序输出所有可达异或值。

样例输入 1

4
4 2 2 4

样例输出 1

4
0 2 4 6

样例输入 2

8
1 0 1 7 12 5 3 2

样例输出 2

12
0 1 2 3 4 5 6 7 10 11 12 13

数据范围

  • 1≤n≤1061\le n\le10^6;
  • 0≤ai≤50000\le a_i\le5000。

本题采用独立测试点计分。

子任务编号 分值 特殊限制
1 20 n≤20n\le20
2 40 n≤5000n\le5000
3 无特殊限制