#arc139f. [arc139_f]Many Xor Optimization Problems

[arc139_f]Many Xor Optimization Problems

题目描述

PCT 提出了如下问题。

异或优化问题

给定一个长度为 NN 的非负整数序列:A1,A2,...,ANA_1,A_2,...,A_N。当可以选择 AA 中的任意数量的元素时,所选值的最大可能 mathrmXOR\\mathrm{XOR} 是多少?

Nyaan 认为这太简单了,对其进行了修改,改为了以下问题。

许多异或优化问题

由介于 002M12^M-1 之间的整数组成的长度为 NN 的序列有 2NM2^{NM} 个。求所有这些序列上 异或优化问题 的答案之和,对 998244353998244353 取模。

解决 许多异或优化问题

什么是按位 mathrmXOR\\mathrm{XOR}

非负整数 AABB 的按位 mathrmXOR\\mathrm{XOR},记作 AoplusBA \\oplus B,定义如下:

  • AoplusBA \\oplus B 以二进制表示,第 2k2^k 位(kgeq0k \\geq 0)的数字为 11 当且仅当 AABB 中只有一个数字为 11,否则为 00

例如,我们有 3oplus5=63 \\oplus 5 = 6(二进制表示为 011oplus101=110011 \\oplus 101 = 110)。
通常情况下,kk 个非负整数 p1,p2,p3,dots,pkp_1, p_2, p_3, \\dots, p_k 的按位 mathrmXOR\\mathrm{XOR} 定义为 $(\\dots ((p_1 \\oplus p_2) \\oplus p_3) \\oplus \\dots \\oplus p_k)$。我们可以证明该值不依赖于 p1,p2,p3,dots,pkp_1, p_2, p_3, \\dots, p_k 的顺序。

约束条件

  • 1leN,Mle2500001 \\le N,M \\le 250000
  • 所有输入的值都是整数。

输入

输入以标准格式给出,格式如下:

NN MM

输出

输出答案。


示例输入1

2 1

示例输出1

3

我们需要解决对所有长度为 22,并由介于 0011 之间的整数组成的序列上的 异或优化问题

  • 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


示例输入2

3 4

示例输出2

52290

示例输入3

1234 5678

示例输出3

495502261