CF1861E.Non-Intersecting Subpermutations

提高+/省选-

通过率:0%

时间限制:2.00s

内存限制:512MB

AC君温馨提醒

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

题目描述

You are given two integers nn and kk.

For an array of length nn, let's define its cost as the maximum number of contiguous subarrays of this array that can be chosen so that:

  • each element belongs to at most one subarray;
  • the length of each subarray is exactly kk;
  • each subarray contains each integer from 11 to kk exactly once.

For example, if n=10n = 10, k=3k = 3 and the array is [1,2,1,3,2,3,2,3,1,3][1, 2, 1, 3, 2, 3, 2, 3, 1, 3], its cost is 22 because, for example, we can choose the subarrays from the 22-nd element to the 44-th element and from the 77-th element to the 99-th element, and we can show that it's impossible to choose more than 22 subarrays.

Calculate the sum of costs over all arrays of length nn consisting of integers from 11 to kk, and print it modulo 998244353998244353.

给你两个整数 nn 和 kk。

对于一个长度为 nn 的数组,我们定义其代价为:能够从中选出的、满足以下条件的互不重叠的连续子数组的最大个数:

  • 每个元素至多属于一个子数组;
  • 每个子数组的长度恰好为 kk;
  • 每个子数组恰好包含 11 到 kk 中的每个整数各一次。

例如,若 n=10n = 10,k=3k = 3,数组为 [1,2,1,3,2,3,2,3,1,3][1, 2, 1, 3, 2, 3, 2, 3, 1, 3],则其代价为 22。这是因为,例如我们可以选取从第 22 个元素到第 44 个元素的子数组(即 [2,1,3][2,1,3])和从第 77 个元素到第 99 个元素的子数组(即 [2,3,1][2,3,1]);并且可以证明无法选出超过 22 个满足条件的子数组。

请计算所有由 11 到 kk 中的整数组成的长度为 nn 的数组的代价之和,并将结果对 998244353998244353 取模后输出。

输入格式

The only line of the input contains two integers nn and kk (2≤k≤n≤40002 \le k \le n \le 4000).

输入仅包含一行,其中有两个整数 nn 和 kk(2≤k≤n≤40002 \le k \le n \le 4000)。

输出格式

Print one integer — the sum of costs of all arrays of length nn consisting of integers from 11 to kk taken modulo 998244353998244353.

输出一个整数——所有长度为 nn、由 11 到 kk 的整数组成的数组的成本之和,对 998244353998244353 取模。

输入输出样例

  • 输入#1

    10 3

    输出#1

    71712
  • 输入#2

    2 2

    输出#2

    2
  • 输入#3

    1337 42

    输出#3

    524933698

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

首页