#B4572. [合肥市初中组 2025 T4] 幸运排列

    ID: 17472 Type: RemoteJudge 1000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 9 Uploaded By: Tags>动态规划 DP2025安徽组合数学二项式定理Stirling 数期望

[合肥市初中组 2025 T4] 幸运排列

题目背景

民间数据。

题目描述

排列是长度为 nn 的从 11 到 nn 的整数序列,其中每个数字都恰好出现一次。例如,(1)(1)、(4,3,5,1,2)(4, 3, 5, 1, 2)、(3,2,1)(3, 2, 1) 是排列,而 (1,1)(1, 1)、(4,3,1)(4, 3, 1)、(2,3,4)(2, 3, 4) 不是排列。

小 C 最近在研究排列,他认为每个排列的幸运程度不同。具体来说,一个排列的幸运值定义为其前缀最小值个数的 dd 次方。这里对于长度为 nn 的排列 p1,p2,…,pnp_1, p_2, \dots, p_n,满足 min⁡i=1kpi=pk\min_{i=1}^k p_i = p_k 的整数 kk(1≤k≤n1 \le k \le n)的个数称为 pp 的前缀最小值个数。

现在小 C 想知道全体长度为 nn 的排列的幸运值之和是多少,由于答案可能很大,请输出答案对 998244353998244353 取模后的结果。

输入格式

本题包含多组测试数据。

第一行包含一个正整数 TT,表示数据组数。

接下来 TT 行,每行描述一组数据,包含一个正整数 nn 和一个非负整数 dd,中间用一个空格隔开。

输出格式

输出共 TT 行,每行一个整数,依次表示每组数据对 998244353998244353 取模后的答案。

2
3 2
5 0
23
120
2
5 4
8 47
6844
219698089

提示

样例解释

  • 对于第一组数据,排列 (1,2,3)(1,2,3)、(1,3,2)(1,3,2) 的前缀最小值个数为 11,幸运值为 12=11^2=1;排列 (2,1,3)(2,1,3)、(2,3,1)(2,3,1)、(3,1,2)(3,1,2) 的前缀最小值个数为 22,幸运值为 22=42^2=4;排列 (3,2,1)(3,2,1) 的前缀最小值个数为 33,幸运值为 32=93^2=9。因此幸运值之和为 2×1+3×4+1×9=232 \times 1 + 3 \times 4 + 1 \times 9 = 23。
  • 对于第二组数据,因为 d=0d=0,每个排列的幸运值都是 11。而长度为 55 的排列共有 5!=1205! = 120 个,因此幸运值之和为 120120。

其它样例说明

  • 样例 33:见选手附加文件目录下的 luck/luck3.in 与 luck/luck3.ans。该样例满足测试点 5∼65 \sim 6 的约束条件。
  • 样例 44:见选手附加文件目录下的 luck/luck4.in 与 luck/luck4.ans。该样例满足测试点 7∼87 \sim 8 的约束条件。

数据范围

对于所有数据,保证 1≤T≤105,1≤n≤106,0≤d≤501 \le T \le 10^5, 1 \le n \le 10^6, 0 \le d \le 50。 保证所有的输入数值均为整数。

各测试点的附加限制如下表所示:

测试点编号 T≤T \le n≤n \le d≤d \le
1∼21 \sim 2 55 88 5050
3∼43 \sim 4 10510^5 10610^6 11
5∼65 \sim 6 22
7∼87 \sim 8 10510^5 1010
9∼109 \sim 10 10610^6 5050