【题解】CF Educational Round 4
学到了一些 trick
。虽然考场上只做了 3
道题。
C. The Union of k-Segments
比较棘手的是 l[i]=r[i]
的情况,此时线段退化成了点。
这里提供一个不用分类讨论的做法。
首先离散化,然后 把离散化的值乘2
,这样构建了一些中点。
对于修改 [l,r]
等价于 update(l,1)
+ update(r+1,-1)
。
看图可知,如果当前点是线段的中点,且出现次数 >=k
,则将线段 push
;否则 push
单点。
E. Square Root of Permutation
题意:构造 q[]
使得 q[q[i]]=p[i]
。即求置换 p
的平方根。
考点:数学+置换+思维。
Solution:
- 对于每个
i
,将i
向p[i]
连边。可以得到若干个环。 - 分类讨论:对于奇环,发现
q[q[i]]
还在奇环上,想到将prt[i]
向prt[i+m/2+1]
连边,这样q[q[i]]
恰好指向后继p[i]
。 - 对于偶环,发现若
m=n/2
则恰好回到原点,自然想到将两个长度相同的偶环拼起来,如果cnt % 2 ==1
则输出-1
。
总结:从本题中体会到图论模型的强大,有时候要善于把构造题往图论上思考。
__EOF__

本文作者:仰望星空的蚂蚁
本文链接:https://www.cnblogs.com/cqbzly/p/17530321.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/cqbzly/p/17530321.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」