QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 100

#16294. 加号与减号

Statistics

Farmer John 曾经在他的牧场地面上绘制了一个矩形网格。在每个单元格中,他涂上了一个 $+$ 或一个 $−$(分别代表 $+1$ 和 $−1$)。

随着时间的推移,油漆褪色了,Farmer John 现在只记得部分单元格的值。然而,Farmer John 确实记得关于原始画作的一个重要事实:

在每一行和每一列中,任意连续子段的值之和总是介于 $−1$ 和 $2$ 之间(含端点)。

例如,考虑行 $\texttt{+ - - +}$。它不满足该条件,因为子段 $\texttt{+ [ - - ] +}$ 的和为 $-2$。

然而,行 $\texttt{- + + -}$ 满足该条件。

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

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

输入格式

第一行包含一个整数 $T$($1\le T\le 100$),表示独立测试用例的数量。

每个测试用例的格式如下:

第一行包含三个整数 $R$、$C$ 和 $X$($1\le R,C\le 5\cdot 10^5$,$0\le X\le \min(10^5,RC)$),表示网格的维度为 $R\times C$,且 Farmer John 记得网格中 $X$ 个不同单元格的值。

接下来的 $X$ 行,每行包含一个字符 $v\in {+, -}$,后跟两个整数 $r$ 和 $c$($1\le r\le R, 1\le c\le C$),表示网格中第 $r$ 行第 $c$ 列的值为 $v$。保证在单个测试用例中,没有有序对 $(r,c)$ 会出现多次。

此外,保证所有测试用例中 $R$ 的总和与 $C$ 的总和均不超过 $10^6$,且所有测试用例中 $X$ 的总和不超过 $2\cdot 10^5$。

输出格式

对于每个测试用例,在单独的一行中输出网格的数量。

样例

输入样例 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

说明

以下是这七个网格:

++
++

++
+-

++
-+

+-
++

+-
-+

-+
++

-+
+-

子任务

  • 测试点 3-4:对于所有测试用例,$\min(R,C)=1$
  • 测试点 5-6:对于所有测试用例,$R,C\le 10$
  • 测试点 7-11:$\sum \max(R,C)^2 \le 10^6$
  • 测试点 12-14:$\sum RC \le 10^6$
  • 测试点 15-22:无额外限制。

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#752EditorialOpen题解Milmon2026-01-20 20:14:52View

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.