Cases

看到c这么小肯定往集合方面去想,但是状压没想出来,此时一定不要忘了SOS DP

于是看这篇题解

S肯定是字符种类的集合,考虑枚举超集,当S的某一个超集以某种方式可以通过给定字符串导出,那么S就不行。考虑S不行的话会怎么样,将S的字符在给定字符串中全部标记,那么就是存在两个字符之间的距离大于k,也就是说有一个长度为k的区间,其字符集与S不相交,即其补集是S的超集,于是可以想到答案的做法

update 2024.9.22

重新做一遍,做出来了

其实应该这么想:看到c很小,所以考虑枚举每一段的末尾字符集合,设为S,一个显然的贪心就是将原串中所有在S中的字符全部标记,如果任意相邻两个被标记的字符的长度不超过k那么就行。考虑反面,就是存在一个长度为k的子串,这个子串的每一个字符都没有被标记。于是可以想到题解的做法

posted @   最爱丁珰  阅读(65)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示