#P16729. 计数题

计数题

题目描述

给定整数 n,kn,k,求有多少个长度大于 11 的自然数序列 aa 满足:

  1. 设序列长度为 mm(下标从 11 开始),则

    i=1mkaikn.\sum_{i=1}^{m} k^{a_i} \le k^n.
  2. 对任意 1i<m1\le i<m,均满足

    aiai+1ai+1.a_i\le a_{i+1}\le a_i+1.
  3. a1=0a_1=0am=n1a_m=n-1

由于答案可能很大,请对 998244353998244353 取模后输出。

输入格式

一行两个整数 n,kn,k

输出格式

输出一行一个整数,表示答案对 998244353998244353 取模后的结果。

样例 1

样例输入 1

2 3

样例输出 1

9

样例解释 1

一共有 99 种合法序列:

[0, 1]
[0, 0, 1]
[0, 0, 0, 1]
[0, 0, 0, 0, 1]
[0, 0, 0, 0, 0, 1]
[0, 0, 0, 0, 0, 0, 1]
[0, 1, 1]
[0, 0, 1, 1]
[0, 0, 0, 1, 1]

样例 2

样例输入 2

4 4

样例输出 2

20320

样例 3

样例输入 3

80 3

样例输出 3

726272043

样例 4

样例输入 4

114 514

样例输出 4

655512077

数据范围

测试点编号 nn\le 特殊性质
1,21,2 55
33 8×1038\times 10^3 k=2k=2
4,54,5 9090 k=3k=3
6,7,86,7,8 400400
9,109,10 10310^3
112011\sim 20 8×1038\times 10^3

对于所有数据,保证:

2n8×103,2k<998244353.2\le n\le 8\times 10^3,\qquad 2\le k<998244353.