3020: 牛老板的手机应用

时间限制:2000 ms 内存限制:256 MB
上传者:
提交:4 通过:1

题目描述

牛老板趁着双十一买了一台新手机$iPhone X$。牛老板很高兴的往里面下载了一些应用,并创建了一些文件夹来存放这些应用。
但是这台手机有点奇怪,共有$n$个文件夹,每个文件夹有一个编号,每个文件夹内的应用也有一个文件夹内编号。
一个文件夹中的应用可以以如下规则换位置:设文件夹中的应用依次编号为$1,2,3……n$,一次操作可以让$i$号应用移动到$i+1$号应用的位置上,$n$号应用移动到$1$号应用的位置。同时,手机里还有两个兄弟文件夹,编号为$x,y$,两个文件夹可以整体互换位置,但是文件夹互换位置后容量也会互换,应用会自动根据文件夹容量进行调整(如$(1,2)(3,4,5)(6)$,$1,3$ 文件夹互换后变为$(6,3)(4,5,1)(2)$,$1,2$文件夹互换后变为$(3,4)(5,1,2)(6)$。
现在,黑心商人$ctr$要为每个应用打一个官方推荐评分,总分为$k$,每个应用的分数为$1~k$中的一个整数。
现在想请你帮牛老板算一算,如果将所有应用依编号展开成一排,一共有多少种可能的评分方式,如果一个评分方式能经过上述变换后能够得到另外一种评分方式,那么两种评分方式视为一种。(如有$3$文件夹$(1,2)(3,4,5)(6,7)$,$1,2$文件夹为兄弟文件夹,$k=10$,那么$9 \ 4 \ 2 \ 2 \ 2 \ 1 \ 3$ 与 $4 \ 9 \ 2 \ 2 \ 2 \ 1 \ 3$ 与$2 \ 2 \ 2 \ 9 \ 4 \ 1 \ 3$视为同一种评分,后两者可由两种操作从第一种评分得到)
请注意,答案可能很大,请输出对$10^{9} + 7$取模后的结果。

输入格式

输入第一行为一个整数$T(T \leq 50)$,表示一共有$T$组测试数据。
每组数据有两行:
第一行为两个整数$n(1 \leq n \leq 4)$和$k(1 \leq k \leq 2000)$,分别表示文件夹数与$ctr$打分范围是$[1,k]$。
第二行有$n$个整数,第$i$个数表示第$i$个文件夹里面有$a_i(1 \leq k \leq 4)$个文件夹。
第三行有两个互不相同的数字$x,y(1 \leq x, y \leq n)$,表示兄弟文件夹的编号。

输出格式

对于每组测试数据,输出一个正整数$x$,表示评分方案总数对$10^9+7$取模后的结果。

输入样例 复制

2
3 1
1 1 1
1 2
2 2
1 2
1 2

输出样例 复制

1
4

数据范围与提示