P13262 [GCJ 2014 #3] Crime House

题目描述

你作为警方的一员,发现了一栋人们会前往犯罪的房子,称作 Crime House。某一天,你在这栋房子的前门上安装了一个摄像头并开始录像。 你不知道这一天开始时 Crime House 里有多少人,但你能看到有人从前门进入和离开。不幸的是,由于这些进出 Crime House 的人都是罪犯,他们有时会戴着面具;而你也无法确定前门是否是唯一的出入口。 有时候你可以猜出谁戴了面具。例如,如果罪犯编号为 5 的人进入了房子,然后一个戴着面具的人离开了,然后编号 5 又进入了一次,那么这个戴面具离开的要么就是罪犯 5,要么就是还有其他出入口存在。 在一天结束,Crime House 关门之后,你回看了录像。作为一名乐观主义者,你想知道:是否有可能 Crime House 并没有其他出入口?如果有这种可能,你还希望知道:**在这种前提下,Crime House 最后最少可能还有多少人留在里面**。

输入格式

输入的第一行是测试用例的数量 $\mathbf{T}$。接下来是 $\mathbf{T}$ 个测试用例。 每个测试用例以一个整数 $\mathbf{N}$ 开头,表示当天录像中人们经过前门的事件总数。接下来的 $\mathbf{N}$ 行中,每行描述一次进入或离开: - 每行的格式为一个字符 $\mathbf{E}$ 或 $\mathbf{L}$ 加一个空格,再加一个整数 $\mathbf{id}$。 - 如果是 $\mathbf{E}$,表示某人从前门进入 Crime House; - 如果是 $\mathbf{L}$,表示某人从前门离开; - 如果 $\mathbf{id} > 0$,表示该编号的罪犯进出; - 如果 $\mathbf{id} = 0$,表示该人戴着面具,无法识别身份。

输出格式

对于每个测试用例,输出一行,格式为 `"Case #x: y"`,其中 $x$ 是测试用例编号(从 1 开始),$y$ 是以下二者之一: - 如果有可能 Crime House 没有其他出入口,则输出 Crime House 可能最后剩下的人数最小值; - 如果不可能,则输出字符串 `"CRIME TIME"`(不带引号)。

说明/提示

## 限制条件 - $1 \leq \mathbf{T} \leq 100$ - $0 \leq \mathbf{id} \leq 2000$ ### Small 数据集(12 分) - 时间限制:~~60~~ 3 秒 - $1 \leq \mathbf{N} \leq 15$ ### Large 数据集(22 分) - 时间限制:~~120~~ 10 秒 - $1 \leq \mathbf{N} \leq 1000$ 翻译由 ChatGPT-4o 完成