模拟赛8.18 解题报告
T1. 动态数点(JZOJ6294)
题意:求最大的
题目相当于找一个区间,满足存在一个数是区间所有数的因数。
那么这样的数必定是区间的最小值,于是条件转化为
不难想到区间长度具有可二分性,考虑二分区间长度。然后用
T2. 中位数
题意:给出
猜测中位数也许和平均数有关,设平均值
把
那么
我们给集合分类:
进一步可得,对于两个互为补集的集合
一共有
因为不算空集,我们要在
如何求和
T3. 出题
题意:有
-
:令 都加上 。 -
:查询
一开始
首先考虑如何只用树状数组求解。若没有删除,那么这是个区间加、区间查询的板子,可以用两个树状数组解决。
考虑每次删除一个操作,若删除的是区间加操作,那么这会与之后的查询产生贡献,对总答案产生贡献;若删除的是区间查询操作,这会与之前的加操作产生贡献。
这就有点三位偏序的感觉了,但思路还是不够清晰。
我们把每一个操作都放到对应的删除时间上,最后一个没删除的操作对应结尾时间。设
于是,删除时间一维,原操作序列的顺序一维,以及区间操作一维,直接
T4. 排列(AGC005D ~K Perm Counting)
题意:求有多少个
万重原题。
考虑若没有绝对值符号,即
但是现在
发现建出来的图是由
由于选边表示匹配,那么选择的不同的两条边不能连接一个相同的点。转移:
对于
最后的答案即为
时间复杂度
出处:https://www.cnblogs.com/Sktn0089/p/17640697.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下