题目背景
译自 Izborne Pripreme 2018 (Croatian IOI/CEOI Team Selection) D2T1。10s,1G。
题目描述
A 国和 B 国正在划分一块 n×m 的矩形土地。
显然,这块土地上有 (n−1) 条水平线和 (m−1) 条垂直线。
给这 (n+m−2) 条线分配 [1,k] 间的整数。定义一个格子的权值为在它左/上方的线上整数之和减去在它右/下方的线上整数之和。

给定每个格子权值的要求(要求这个格子的权值 <0 或者 >0)。在 kn+m−2 种分配整数的方案中,求出有多少个方案符合要求。
只需要输出答案对 (109+7) 取模后得到的结果。
输入格式
第一行,三个正整数 n,m,k。
接下来一个 n×m 的矩阵,里面的元素不是 + 就是 -,表示每个格子权值符号的要求。
输出格式
输出一行一个整数,表示答案。
提示
对于 100% 的数据,保证 1≤n,m,k≤80。
子任务编号 |
n |
m |
k≤ |
特殊性质 |
得分 |
1 |
≤10 |
≤10 |
4 |
|
10 |
2 |
≤80 |
=1 |
80 |
3 |
≤20 |
≤20 |
20 |
4 |
≤40 |
≤40 |
40 |
20 |
5 |
≤79 |
=n+1 |
80 |
A |
6 |
≤80 |
|
30 |
特殊性质 A:(i,j) 要求为 +,当且仅当 i+j≥m+1。