AT_abc300_h.[ABC300Ex] Fibonacci: Revisited

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

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

an={1(0≤n<K)∑i=1Kan−i(K≤n)a_n = \begin{cases} 1 & (0 \leq n < 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} 表示按位与运算)

按位与运算的定义如下:对于整数 A,BA,B,A AND BA\ \text{AND}\ B 的二进制表示中,第 2k2^k 位(k≥0k \geq 0)的数值为 A,BA,B 的二进制表示中第 2k2^k 位都为 11 时为 11,否则为 00。

输入格式

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

KK NN

输出格式

请输出答案。

输入输出样例

  • 输入#1

    2 6

    输出#1

    21
  • 输入#2

    2 8

    输出#2

    35
  • 输入#3

    1 123456789

    输出#3

    65536
  • 输入#4

    300 20230429

    输出#4

    125461938
  • 输入#5

    42923 999999999558876113

    输出#5

    300300300

说明/提示

限制条件

  • 1≤K≤5×1041 \leq K \leq 5 \times 10^4
  • 0≤N≤10180 \leq N \leq 10^{18}
  • N,KN, K 均为整数

样例解释 1

数列各项从 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 共 44 个,因此答案为 1+2+5+13=211 + 2 + 5 + 13 = 21。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页