#ABC300Ex. 斐波那契:再探

斐波那契:再探

斐波那契:再探

题目描述

定义数列 a0,a1,a2,a_0, a_1, a_2, \dots 的通项如下:

$a_n = \begin{cases} 1 & (0 \leq n \lt K) \\ \displaystyle{\sum_{i=1}^K} a_{n-i} & (K \leq n). \\ \end{cases}$

给定整数 NN,求所有满足 m AND N=mm\text{ AND }N = m 的非负整数 mm 对应的 ama_m 之和,对 998244353998244353 取模。(AND\text{AND} 表示按位与。)

什么是按位与?

非负整数 AABB 的按位与 A AND BA\text{ AND }B 定义如下。

用二进制表示 A AND BA\text{ AND }B 时,若 AABB2k2^k 位(k0k \geq 0)都为 11,则结果的 2k2^k 位为 11,否则为 00

输入格式

输入按以下格式从标准输入给出:

KK NN

输出格式

输出答案。

样例

2 6
21

a0a_0 及其后的各项为 1,1,2,3,5,8,13,21,1, 1, 2, 3, 5, 8, 13, 21, \dots。 满足 6 AND m=m6 \text{ AND } m = m 的非负整数有 0,2,4,60, 2, 4, 6 四个,因此答案为 1+2+5+13=211 + 2 + 5 + 13 = 21

2 8
35
1 123456789
65536
300 20230429
125461938
42923 999999999558876113
300300300

数据范围

  • 1K5×1041 \leq K \leq 5 \times 10^4
  • 0N10180 \leq N \leq 10^{18}
  • NNKK 为整数。
难度 NOI/NOI+/CTS
通过率
尝试 0
已通过 0
ID
2922
类型
传统题
Time Limit
2619ms
Memory Limit
1024MiB
上传者
标签