#P16124. [2026年山东集训一轮]计数题

[2026年山东集训一轮]计数题

题目描述

定义一个长度为 2n2n 的数组是好的,当且仅当 1n1\sim n 在其中各出现两次。

对于一个好的数组 aa,定义 ii完美点,当且仅当前缀 a1aia_1\sim a_i 作为一个独立的数组也是好的。

给定 n,rn,r,求满足以下条件的数组 aa 的个数,对 998244353998244353 取模:

  1. aa 是长度为 2n2n 的好数组。
  2. 只要 ai,ai+1,ai+2a_i,a_{i+1},a_{i+2} 形成等差数列,则 iii+1i+1 必须至少有一个是完美点。
  3. 不存在 i<j<ki<j<kaiajaka_i\ge a_j\ge a_k
  4. 存在恰好 rr 个位置满足 aiai+1a_i\ge a_{i+1}

输入格式

每个测试点含有多组数据。

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

接下来对于每组数据,输入一行两个正整数 n,rn,r

输出格式

对于每组数据,输出一行一个非负整数,表示答案。

样例 1 输入

4
3 2
5 3
50 30
100000 100000

样例 1 输出

3
6
7696910
1

数据范围与约定

本题采用捆绑测试。

子任务编号 限制 分数
1 n,r5n,r\le 5 10
2 T=1, n,r100T=1,\ n,r\le 100 20
3 T=1T=1 30
4 无特殊限制 40

对于全部数据:

1T105,1\le T\le 10^5, 1n,r106.1\le n,r\le 10^6.