#P0579. 到不同的距离(Distance to Different)

到不同的距离(Distance to Different)

题目描述

考虑一个长度为 nn 的整数数组 aa,其中每个元素都在 11kk 之间,并且 1,2,,k1,2,\ldots,k 每个数都至少出现一次。

aa 构造数组 bb:对于第 ii 个位置,bib_i 是它到最近的、值不等于 aia_i 的位置的距离。也就是

bi=minj[1,n], ajaiij.b_i=\min_{j\in[1,n],\ a_j\ne a_i}|i-j|.

例如 a=[1,1,2,3,3,3,3,1]a=[1,1,2,3,3,3,3,1] 时,b=[2,1,1,1,2,2,1,1]b=[2,1,1,1,2,2,1,1]

请计算在所有可能的数组 aa 中,可以得到多少种不同的数组 bb。答案对 998244353998244353 取模。

输入格式

一行两个整数 n,kn,k

输出格式

输出一个整数,表示不同数组 bb 的数量,对 998244353998244353 取模。

样例

2 2
1
4 3
3
6 2
20
6 5
3
133 7
336975971

数据范围

2n2×1052\le n\le2\times10^52kmin(n,10)2\le k\le\min(n,10)