重庆八中周赛 10
一言:
无论你在哪里,就算我看不见你,我也会一直注视着你。
——妖精的尾巴
如果把买入和卖出分开处理显然会有一些繁琐,所以我们考虑把他们合在一起,那么买入的利润就是价格的相反数,而卖出就会失去核心。
我们可以很显然的想到将核心当作容量,利润当作价值,定义
但是只是单纯这样的话,我们会发现,对于一些卖出,他可能时钟频率不合法。
所以我们考虑将时钟频率从小到大排序,然后根据最开始的分析来一遍背包
解法一:
考虑
我们定义
对于初始值,显然有
接着我们考虑转移。首先顺着枚举状态中的
-
对于
,由于第 行必须有 ,并且不能再新产生一列的最小值是 ,所以只能在这最小值已经为 的 列中,使得其中必须存在一个 。计算的话,就是用乱选减去一个 都不选,及 。 -
对于剩余情况,显然这一行已经有
了,所以我们只需要考虑列的情况。显然,我们需要从 (就是在上一行还没有产生这 列的状态) 选出 列来填补 ,对于上一状态就已经最小值为 的列,显然是可以乱选的,也就是 ,那么对于剩余的 列,只要不取 就可以了,也就是 。总的来说,就是 。
将两个部分的解加起来即可。
最后,直接输出
总复杂度为
解法二:
考虑容斥,枚举有
乱推一波式子,显然有
这题应该是最有价值的了。
题意就是求逆序对个数的期望,不难发现,对于树上的一对点对
首先可以枚举根是谁
仔细思考可以发现,对于是
所以接下来考虑一个简单的递推。定义
对于初始值,显然有
如果你走的下一步并不能靠近
最后,对于每一个根,枚举
时间复杂度
-
对于一堆
对应一个 ,如果有一些限制条件,使得其他的 不合法,且为了方便求解,我们需要把 合并在一起算,那么我们可以考虑排一个合适的顺序,使得 前面的 对他全部合法,这样更能方便求解。 -
对于组合数学,一个很好的方式就是背包
。 -
对于树上
两个点的一些对比,是否只需要从他的 开始呢。 -
考场上第五题文件名为
但我拼的 ,所以100分没了,出题人你真的英语就这么好吗。。下次复制吧。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】