题目描述
定义一个长度为 2n 的整数序列 A 是好的当且仅当 1,2,⋯,n 中的每个整数都在 A 中出现恰好 2 次。
对于一个长度为 2n 的好整数序列 A,如果一个 1≤i≤2n 满足 A 的前缀 1…i 也是好的,那么称 i 是 A 的一个完美点。
给定正整数 n,r,称一个长度为 2n 的整数序列 A 是闪耀的当且仅当:
- A 是好的。
- 不存在正整数 1≤i<j<k≤2n 使得 Ai≥Aj≥Ak。
- 不存在正整数 1≤i≤2n−2 使得 Ai+2=Ai+1+1=Ai+2 且 i 和 i+1 都不是 A 的完美点。
- 存在恰好 r 个 1≤i≤2n−1 使得 Ai≥Ai+1。
现在你需要求出长度为 2n 的闪耀的整数序列个数。答案可能很大,对 998244353 取模。
输入格式
本题有多组测试数据。
第一行一个正整数 T 表示数据组数。
后 T 行每行两个正整数 n,r 描述一组询问。
输出格式
T 行,每行回答一组询问,答案对 998244353 取模。
样例 #1
样例输入 #1
4
3 2
5 3
50 30
100000 100000
样例输出 #1
3
6
7696910
1
样例解释 #1
n=3,r=2 时所有闪耀的序列如下:
- 1,1,2,3,2,3。
- 1,2,1,2,3,3。
- 1,2,1,3,2,3。
数据范围
本题采用捆绑测试。
- Subtask 1 (10pts):n,r≤5。
- Subtask 2 (20pts):T=1,n,r≤100。
- Subtask 3 (30pts):T=1。
- Subtask 4 (40pts):无特殊限制。
对于全部数据,1≤T≤105,1≤n,r≤106。