「EZEC-10」Covering

题目描述

给你一个 $n\times m$ 的棋盘和 $k$ 张 $1\times 2$ 的纸片,编号 $1$ 到 $k$。 你可以任意选择数量在 $[l,r]$ 内的纸片,并按照编号从小到大的顺序,依次横放或竖放在棋盘上。 **注意:后放的纸片会覆盖在先放的纸片上。** 给定最终棋盘中每个格子上的纸片编号,求满足条件的不同方案数,并对 $10^9+7$ 取模。 **两种方案相同,当且仅当两方案选择的纸片数量、纸片编号及每张纸片的摆放位置均相同。**

输入输出格式

输入格式


第一行一个整数 $T$,表示测试数据组数。 对于每组测试数据: - 第一行五个整数 $n,m,k,l,r$。 - 后 $n$ 行每行 $m$ 个整数,表示最终棋盘中每个格子上的纸片编号,若某格子未被覆盖则编号记为 $0$。 - **数据保证至少存在一种可行的方案。**

输出格式


对于每组数据: - 一行一个整数,表示方案数对 $10^9+7$ 取模的结果。

输入输出样例

输入样例 #1

1
2 2 4 2 4
1 2
3 3

输出样例 #1

2

输入样例 #2

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

输出样例 #2

1
1

说明

**【样例 1 解释】** 不难发现只能取编号为 $1,2,3$ 的纸片,此时共有 $2$ 种方案: $1:(1,1)\to (1,2)$,$2:(1,2)\to (2,2)$,$3:(2,1)\to (2,2)$; $1:(1,1)\to (2,1)$,$2:(1,2)\to (2,2)$,$3:(2,1)\to (2,2)$。 **【数据规模与约定】** **本题采用捆绑测试。** - Subtask 1(5 points):$r=1$。 - Subtask 2(10 points):$n,m,k\le 5$。 - Subtask 3(15 points):$l=k$。 - Subtask 4(20 points):$n\times m\le 10^3$。 - Subtask 5(50 points):无特殊限制。 对于 $100\%$ 的数据,$1\le T\le 10$,$2\le n,m,k\le 10^3$,$1\le l\le r\le k$。