#P13172. [ARC139F] Many Xor Optimization Problems

    ID: 12356 传统题 8000ms 1024MiB 尝试: 1 已通过: 1 难度: 9 上传者: 标签>CF2600组合数学线性基数学模运算生成函数多项式

[ARC139F] Many Xor Optimization Problems

题目描述

PCT 君出了一道如下题目。

Xor 优化问题
给定一个长度为 NN 的非负整数序列 A1,A2,,ANA_1,A_2,\ldots,A_N。你可以任选若干个 AA 的元素,所选元素的 XOR\mathrm{XOR} 能取得的最大值是多少?

由于这道题对 Nyaan 君来说太简单了,PCT 君将题目改成了如下形式。

多个 Xor 优化问题
长度为 NN 且所有元素都在 002M12^M-1 之间的整数序列共有 2NM2^{NM} 种。对于所有这些序列,分别求解 Xor 优化问题,将所有答案之和对 998244353998244353 取模,输出结果。

请你解决 多个 Xor 优化问题

XOR\mathrm{XOR} 的定义如下:
对于非负整数 A,BA,B,它们的按位 XOR\mathrm{XOR},记作 ABA\oplus B,定义为:

  • ABA\oplus B 的二进制表示中 2k2^kk0k\geq 0)位上的数,如果 A,BA,B 的二进制表示在 2k2^k 位上只有一个为 11,则该位为 11,否则为 00

例如,35=63\oplus 5=6(二进制表示为:011101=110011\oplus 101=110)。
一般地,kk 个非负整数 p1,p2,,pkp_1,p_2,\ldots,p_k 的按位 XOR\mathrm{XOR} 定义为 $(\cdots((p_1\oplus p_2)\oplus p_3)\oplus\cdots\oplus p_k)$,并且可以证明其结果与顺序无关。

输入格式

输入从标准输入读入,格式如下:

NN MM

输出格式

请输出答案。

输入输出样例 #1

输入 #1

2 1

输出 #1

3

输入输出样例 #2

输入 #2

3 4

输出 #2

52290

输入输出样例 #3

输入 #3

1234 5678

输出 #3

495502261

说明/提示

数据范围

  • 1N,M2500001\leq N,M\leq 250000
  • 输入均为整数。

样例解释 1

对于长度为 22 且所有元素都在 0011 之间的所有整数序列,分别求解 Xor 优化问题

  • A=(0,0)A=(0,0) 时,答案为 00
  • A=(0,1)A=(0,1) 时,答案为 11
  • A=(1,0)A=(1,0) 时,答案为 11
  • A=(1,1)A=(1,1) 时,答案为 11
    因此,0+1+1+1=30+1+1+1=3,即为答案。