logo AlgoBeat OnlineJudge
登录 注册

#215088. [USACO26JAN1] Pluses and Minuses P

内存限制:256 MiB 时间限制:2000 ms 标准输入输出
题目类型:VJudge(洛谷) 评测方式:VJudge
上传者: 匿名

题目描述

农夫 John 曾经在他牧场的地面上画了一个矩形网格。在每个单元格中,他画了一个 或一个 (分别代表 )。

随着时间的推移,颜料褪色了,农夫 John 现在只记得某些单元格的值。然而,农夫 John 记得关于原始绘画的一个重要事实:

在每一行和每一列中,任意连续子段内的值之和总是在 之间(含端点)。

举个例子,考虑行 。它不满足条件,因为子段 的和是

但是,行 确实满足条件。

[ - ] + + -    和 = -1
[ - + ] + -    和 = 0
[ - + + ] -    和 = +1
[ - + + - ]    和 = 0
- [ + ] + -    和 = +1
- [ + + ] -    和 = +2
- [ + + - ]    和 = +1
- + [ + ] -    和 = +1
- + [ + - ]    和 = 0
- + + [ - ]    和 = -1

计算与农夫 John 记忆相符的不同网格的数量。

输入格式

第一行包含 ),表示独立测试的数量。每个测试按以下格式指定:

第一行包含 ),表示网格的尺寸为 ,且农夫 John 记得网格中 个不同单元格的值。

接下来的 行,每行包含一个字符 和两个整数 ),表示网格第 行第 列的值为 。保证在同一测试中,有序对 不会出现多次。

此外,保证所有测试的 之和与 之和都不超过 ,且所有测试的 之和不超过

输出格式

对于每个测试,将网格数量输出在单独一行。

样例

样例输入 1

2
1 3 3
+ 1 3
+ 1 1
- 1 2
1 3 3
+ 1 1
+ 1 3
+ 1 2

样例输出 1

1
0

样例输入 2

1
2 2 0

样例输出 2

7

数据范围与提示

以下是七个网格:

++
++

++
+-

++
-+

+-
++

+-
-+

-+
++

-+
+-

  • 输入 -:所有测试中
  • 输入 -:所有测试中
  • 输入 -
  • 输入 -
  • 输入 -:无额外约束。

翻译由 DeepSeek V3 完成