P14708 [ICPC 2023 Tehran R] Micromasters Certificates
题目描述
计算机工程系提供了若干微硕士项目,每个项目包含一套课程体系。如果一名学生成功完成了某个微硕士项目的所有课程,他将获得该微硕士项目的证书。一门课程可能包含在多个微硕士项目的课程体系中。Soroush 只关心获得证书,而不在乎证书的类型,他希望以尽可能少的课程数量获得 $3$ 个微硕士项目的证书。微硕士项目的课程体系被张贴在公告板上。请根据公告板上的微硕士课程体系帮助 Soroush 实现他的目标。
输入格式
输入表示一个公告板。公告板最多包含 $400$ 行和 $400$ 列。每个微硕士项目的课程体系被封装在一个矩形框中。公告板和课程体系框的边界分别用字符 "+"、"-" 和 "|" 表示角、水平边和垂直边。课程体系框之间互不相交(没有共享字符),每个框都有自己的边界。课程体系框内的每一行最多包含一个课程名称。课程名称由字母数字和空格字符组成。课程名称不区分大小写,其中的空格无关紧要。例如,"General math1" 和 "generalMath 1" 被视为相同。公告板上最多有 $50$ 个课程体系框,每个框最多包含 $30$ 门课程。保证公告板上至少有 $3$ 个框,且每个框内至少有 $1$ 门课程。
输出格式
输出一行,表示 Soroush 为获得至少 $3$ 个证书所需修读的最少课程数量。