#529. 站队

站队

站队

时间限制:2s2s

空间限制:256MB256MB

题目背景:

幼儿园里有两个班的孩子需要站好队伍才能排排坐吃饭。

题目描述:

幼儿园里有两个班,我们不妨称他们为一班和二班。

一班有 aa 名同学,二班有 bb 名同学。

注意到小孩子的特性,同班的同学聚集过多会纪律涣散,过少又会让他们感到孤立。

我们用 AA 代指一班同学,BB 代指二班同学,最终的站队序列形如 ABBABBAAABABBABBAAAB 的形式。

显然相邻的情况只有四种:AA,AB,BB,BAAA, AB, BB, BA,我们需要这四种情况在序列中出现次数相同。

你的任务是求出可能的序列个数,如果过多,请对 998244353998244353 取模。

输入描述:

本题要求多组测试数据
第一行一个整数T,表示待测试的数据组数。
第二行到第T+1行,每行两个非负整数a,b,内容如题所示。

输出描述:

共T行,每行一个整数,表示共多少满足情况的序列数

样例输入:

3
1 0 
2 3 
9 8

样例输出:

1
2
2450

样例解释

样例一只有 AA 一种排法,四种出现个数为 00 , 均相等故答案为 11

样例二可能排法为 ABBAA,AABBAABBAA, AABBA 这两种方案中 AA,AB,BA,BBAA, AB, BA, BB 均只出现一次。

数据范围:

对每一组数据必有 0a+b1070 \le a + b \le 10^7

30pts\text{30pts} T30,a+b20T \le 30, a + b \le 20

40pts\text{40pts} T30,a+b50T \le 30, a + b \le 50

80pts\text{80pts} T106,a+b5×105T \le 10^6, a + b \le 5\times 10^5

100pts\text{100pts} T106,a+b107T \le 10^6, a + b \le 10^7