QOJ.ac

QOJ

時間限制: 5.0 s 記憶體限制: 2048 MB 總分: 100

#15949. 安多再次袭来

统计

卡西安·安多(Cassian Andor)是一名起义军间谍,他潜入了帝国最先进的星际飞船军械库。他成功黑入了该设施的主计算机,并在其中发现了帝国下一个大武器——“死星”(Death Star,天哪,我们真的是指死星,这个名字还在拟定中)的各种决策过程。

每个决策过程都以与或树(AND/OR tree)的形式呈现,其中树的叶子节点存储布尔值,内部节点要么是与节点(AND 节点),要么是或节点(OR 节点),且沿从根节点出发的任何路径上交替出现。如果一个与节点的所有子树求值结果均为 true,则该与节点求值为 true,否则为 false;如果一个或节点的子树中至少有一个求值结果为 true,则该或节点求值为 true,否则为 false。决策树或任何子树的值就是其根节点的求值结果。图 1 展示了一个与或树的例子(其求值结果为 true)。

图 1:与或树示例

卡西安决定通过修改一个或多个叶子节点的值来破坏每个决策树,从而翻转根节点返回的值。为了使他的破坏行为难以被察觉,他希望修改最少数量的叶子节点。例如,在上面的树中,卡西安可以将每个叶子节点的值都改为 false 以使整棵树的求值结果变为 false,但他只需将最左侧的其中一个值为 true 的叶子节点改为 false 即可达到相同的效果。

虽然卡西安有点独来独往,但他现在也需要一些帮助。请写一个程序,在给定一棵与或树的情况下,确定为了改变整棵树的求值结果,最少需要修改多少个叶子节点。

输入格式

输入的第一行包含两个值 $n$ 和 $t$,其中 $n$ ($2 \le n \le 20$) 是树的层数,$t$ 为 AO,表示树的奇数层节点的类型(偶数层节点的类型则相反)。树的根节点位于第 1 层。

接下来的 $n$ 行描述了这棵与或树。每行包含一个或多个条目 $e_1\ e_2\ \dots\ e_m$,其中每个 $e_i$ 要么是字符 TF(表示值为 truefalse 的叶子节点),要么是一个正整数 $v \le 10$(表示一个拥有 $v$ 个子节点的内部节点)。

在这些行中的第一行(即第 1 层的描述)仅包含一个数值。后续每一行中的条目数量等于上一层所有数值(即内部节点的子节点数)的总和。每一层的节点应从左到右依次分配给上一层的节点。树中的总节点数(包括内部节点和叶子节点)小于或等于 $10^5$。

输出格式

输出为了改变整棵树的求值结果,最少需要翻转的叶子节点数量。

样例

输入样例 1

4 A
3
2 3 3
3 F T F T F T T
T T T

输出样例 1

1

输入样例 2

2 O
10
T T T T T T T T T T

输出样例 2

10

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.