Codeforces Round #807 (Div. 2)
1|0A
核心思路
也是一个观察性质的过程,但是这个性质比较简单。我们可以发现两个数相等的时候比较好构造。并且我们取另外一个数为1就好了。
2|0B
这里的性质就是
3|0C
核心思路
这里就需要挖掘mex的性质了。首先我们如果需要一段序列的mex的值是x,那么这段序列里面[0,x-1]这里面的数肯定都出现过。
把这个性质挖掘出来了,问题也就解决了大半了。所以我们可以统计每个数出现的左右区间。
所以我们枚举[0,n-1]的区间端点就好了。
mex函数其实博弈论里面是使用了的。这里有点不一样的是,我们是采取了直接一个一个的找的方式。时间复杂度比较高
4|0D
核心思路
首先我们从最简单的1 2 3 4 5 1,也就是想要把左右端点合为相同的需要些什么性质呢。性质1:必须得区间长度为偶数,
性质2就是某个数出现的最大的次数不可以是len/2,不然就删不掉。.这个性质其实可以很好理解因为我们最多也是需要一一配对才可以消掉。还是举一个例子吧,也就是1 1 1 2 3 1 。注意我们这里是求哪个区间可以完全删掉。
于是我们可以先预处理出来哪个左右区间可以当我们左右端点相同的时候左右端点合并,向上面的就是合为1 1.然后就是dp了。
集合定义:
集合划分:我们只需要找到i前面的一个点j,看是否区间[I+1,j-1]是可以删除的。
状态转移方程:
__EOF__

本文作者:肖英豪
本文链接:https://www.cnblogs.com/xyh-hnust666/p/17060610.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/xyh-hnust666/p/17060610.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具