#722. Guess the Animal

Guess the Animal

题目描述

奶⽜Bessie和她的朋友Elsie厌倦了她们的坚果壳游戏,她们想要玩另⼀个叫做“猜动物”的常⻅游戏。 游戏开始时,Bessie会想好⼀种动物(⼤部分时候,她想的都是奶⽜,这使得游戏相当⽆聊,但是偶尔Bessie也能 有些新意,想⼀些别的)。随后Elsie会通过问⼀些问题来猜出Bessie选择的动物。每个问题都是询问这种动物是否 具有某个特定的特征,Bessie对于每个问题回答“是”或“不是”。例如:

Elsie:“这种动物是能⻜的吗?” Bessie:“不是。”
Elsie:“这种动物是吃草的吗?” Bessie:“是。”
Elsie:“这种动物是能产奶的吗?” Bessie:“是。”
Elsie:“这种动物是会哞哞叫的吗?” Bessie“是。”
Elsie:“这样的话我想这种动物是奶⽜。”Bessie:“猜对了!”

如果我们将所有具备符合Elsie到⽬前为⽌所提出的问题的特征的动物的集合称为“可⾏集”,那么Elsie会持续进⾏提 问直到可⾏集仅包含⼀种动物,然后她会把这种动物作为她的答案。对于每个问题,Elsie会选择某种动物的⼀个特 征进⾏询问(即使这个特征并不能进⼀步帮助她缩⼩可⾏集)。她不会关于同⼀个特征询问两次。
给定Bessie和Elsie知道的所有动物以及它们的特征,请求出Elsie在猜出正确的动物之前能够得到的“是”的回答的最⼤数量。

输入格式

输⼊的第⼀⾏包含动物的数量 N(2N100(2\leq N\leq 100)。以下 N⾏每⾏描述了⼀种动物。每⼀⾏开始是这种动物的名称,接下来是⼀个整数 K(1K100(1\leq K\leq 100)接下来是这种动物的 K个特征。动物的名称和特征是⾄多20个⼩写字⺟(a..z)组成的字符串。没有两种动物具有完全相同的特征。

输出格式

输出游戏结束之前Elsie可能得到的“是”的回答的最⼤数量。

样例

4 
bird 2 flies eatsworms
cow 4 eatsgrass isawesome makesmilk goesmoo sheep 1 eatsgrass
goat 2 makesmilk eatsgrass
3

样例解释

在这个例⼦中,Elsie可能在对话中获得3个“是”的回答(题⽬中的例⼦),并且不可能进⾏包含超过3个“是”的回答 的对话。