AT_tupc2024_c 2-Power Rush
题目描述
称正整数的多重集合为**好集合**,当且仅当其中所有元素都是 $2$ 的幂。
对于一个非负整数 $N$,定义 $f(N)$ 为所有元素之和为 $N$ 的好集合的元素之积的总和。特别地,空集的元素和为 $0$,元素积为 $1$,因此 $f(0)=1$。
给定非负整数 $T, a, b$。令 $N_i=(a i + b)\ \mathrm{mod}\ 2^{30}$,请计算 $\displaystyle \sum_{i=0}^{T-1}(f(N_i)\ \mathrm{mod}\ 998244353)\oplus i$。其中,$\oplus$ 表示按位异或(XOR)。
按位异或是这样定义的:对于非负整数 $A,B$,$A \oplus B$ 的第 $2^k$ 位(二进制下,第 $k$ 位),仅当 $A,B$ 在该位有且仅有一个为 $1$ 时,该位为 $1$,否则为 $0$。
例如,$3\oplus 5 = 6$,因为二进制表示时 $011 \oplus 101 = 110$。
输入格式
输入为一行,包含三个整数:
> $T\ a\ b$
输出格式
输出计算结果。
说明/提示
## 部分分
本题包含若干部分分。
- 满足 $T\leq 10^6,\ a=1,\ b=0$ 的数据集,得分为 $10$ 分。
- 满足 $T\leq 1000$ 的数据集,得分为 $10$ 分。
## 样例解释 1
$N_0=0,N_1=1,N_2=2,N_3=3,N_4=4$。
- 和为 $0$ 的好集合只有 $\lbrace\rbrace$,$f(0)=1$。
- 和为 $1$ 的好集合只有 $\lbrace 1\rbrace$,$f(1)=1$。
- 和为 $2$ 的好集合有 $\lbrace 1, 1\rbrace$、$\lbrace 2\rbrace$,$f(2)=(1\times 1)+(2)=3$。
- 和为 $3$ 的好集合有 $\lbrace 1,1,1\rbrace$、$\lbrace 1,2\rbrace$,$f(3)=(1\times 1\times 1)+(1\times 2)=3$。
- 和为 $4$ 的好集合有 $\lbrace 1,1,1,1\rbrace$、$\lbrace 1,1,2\rbrace$、$\lbrace 2,2\rbrace$、$\lbrace 4\rbrace$,$f(4)=(1\times 1\times 1\times 1)+(1\times 1\times 2)+(2\times 2)+(4)=11$。
因此,答案是 $(1\oplus 0)+(1\oplus 1)+(3\oplus 2)+(3\oplus 3)+(11\oplus 4)=17$。
## 样例解释 2
$N_0=1000000000,N_1=926258176,N_2=852516352$。
# 数据范围
- $1\leq T\leq 10^7$
- $0\leq a,b