#Qua2407. 大肥鸭吃肯德基

大肥鸭吃肯德基

题目背景

小朋友们抱怨:“鸭鸭你天天老乡鸡老乡鸡,我们都吃腻了,能不能换一个”

于是大肥鸭和小朋友们来到了万象城负一楼的肯德基,准备享用一顿炸鸡大餐。

题目描述

大肥鸭和小朋友们每人/每鸭都会点一个炸鸡全家桶,里面包含 nn 块吮指原味鸡和 mm 块黄金脆皮鸡,吮指原味鸡分 55 种:鸡胸、鸡翅、旁肋、三角、鸡腿,每种分别有 n1,n2,n3,n4,n5n_1, n_2, n_3, n_4, n_5 块。而黄金脆皮鸡只分 22 种:三角、鸡腿,每种有 m1,m2m_1, m_2 块。他们每次可以任意选择一块炸鸡吃完,再选择另外一块炸鸡吃,直到 n+mn+m 块全部吃完为止。这样就可以得到一个长度为 n+mn + m 的吃鸡序列。

1 号小朋友提出了一个问题:每人/每鸭到底有多少种不同的吃鸡序列呢?聪明的大肥鸭不假思索就知道了答案,于是她又加了一个条件,考虑到每个人吃太多同一种炸鸡就会吃腻,不能连续吃超过 kk 块原味鸡,也不能连续吃超过 kk 块脆皮鸡。现在大肥鸭已经不知道该怎么做了,于是他找到了你寻求帮助。因为这个结果很大,所以请输出结果对 998244353998244353 取模后的值。

两个吃鸡序列是相同的,当且仅当这两个吃鸡序列的长度相同(都为 n+mn+m)、并且对应位置上吃的炸鸡种类(原味鸡/脆皮鸡)、炸鸡的部位(鸡胸/鸡翅/旁肋/三角/鸡腿)完全相同,换句话说,你可以认为两块原味鸡鸡腿是一样的,但是一块原味鸡鸡腿和一块原味鸡鸡胸是不一样的。

输入输出格式

输入格式

第一行两个整数:TTkkTT 的含义是大肥鸭和小朋友们一共去了 TT 次肯德基,kk 表示至多连续吃 kk 块原味鸡/脆皮鸡。

接下来 TT 行,每行 77 个整数:n1,n2,n3,n4,n5,m1,m2n_1, n_2, n_3, n_4, n_5, m_1, m_2,表示这次买的全家桶里分别有多少个原味鸡鸡胸、鸡翅、旁肋、三角和鸡腿,有多少个脆皮鸡三角和鸡腿。

输出格式

一共 TT 行,每行一个整数,表示这次去肯德基有多少种不同的吃鸡序列对 998244353998244353 取模的值。

输入输出样例

3 1
1 1 0 0 0 1 0
2 0 0 0 0 1 0
1 1 1 0 0 1 0
2
1
0

Limitation

T5000T \le 5000k5000k \le 5000

n=n1+n2+n3+n4+n55000n = n_1 + n_2 + n_3 + n_4 + n_5 \le 5000m=m1+m25000m = m_1 + m_2 \le 5000

每个数据点:2s, 256MB