AT_tupc2024_c.2-Power Rush
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
称正整数的多重集合为好集合,当且仅当其中所有元素都是 2 的幂。
对于一个非负整数 N,定义 f(N) 为所有元素之和为 N 的好集合的元素之积的总和。特别地,空集的元素和为 0,元素积为 1,因此 f(0)=1。
给定非负整数 T,a,b。令 Ni=(ai+b) mod 230,请计算 i=0∑T−1(f(Ni) mod 998244353)⊕i。其中,⊕ 表示按位异或(XOR)。
按位异或是这样定义的:对于非负整数 A,B,A⊕B 的第 2k 位(二进制下,第 k 位),仅当 A,B 在该位有且仅有一个为 1 时,该位为 1,否则为 0。
例如,3⊕5=6,因为二进制表示时 011⊕101=110。
输入格式
输入为一行,包含三个整数:
T a b
输出格式
输出计算结果。
输入输出样例
输入#1
5 1 0
输出#1
17
输入#2
3 1000000000 1000000000
输出#2
1217611736
说明/提示
部分分
本题包含若干部分分。
- 满足 T≤106, a=1, b=0 的数据集,得分为 10 分。
- 满足 T≤1000 的数据集,得分为 10 分。
样例解释 1
N0=0,N1=1,N2=2,N3=3,N4=4。
- 和为 0 的好集合只有 {},f(0)=1。
- 和为 1 的好集合只有 {1},f(1)=1。
- 和为 2 的好集合有 {1,1}、{2},f(2)=(1×1)+(2)=3。
- 和为 3 的好集合有 {1,1,1}、{1,2},f(3)=(1×1×1)+(1×2)=3。
- 和为 4 的好集合有 {1,1,1,1}、{1,1,2}、{2,2}、{4},f(4)=(1×1×1×1)+(1×1×2)+(2×2)+(4)=11。
因此,答案是 (1⊕0)+(1⊕1)+(3⊕2)+(3⊕3)+(11⊕4)=17。
样例解释 2
N0=1000000000,N1=926258176,N2=852516352。
数据范围
- 1≤T≤107
- 0≤a,b<230
- 输入均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?