题意 给定 \(n\) 个只由 \(a,b\) 组成的字符串,保证两两不同. 要求从中选出尽可能多的字符串,使得选出的字符串中,任意一个字符串不是另一个的子串. 求最多能选多少并输出一个可行解. \(n \leq 750, \sum |S_i| \leq 10^6\) 传送门 思路 考虑根据包含关系建边,可以得到一张有向无环图,之后我们要求的是一个最大点集,两两不能到达.这就是祭祀. 即求最长反链,然后转化为最小链覆盖,再到传递闭包后的最大匹配,关于证明,ta没了. 接着来说一下如何输出方案.…