11.3 模拟赛
T1:
T2:
不难发现,设最终每段黑白比值为
接下来考虑如何让划分区间最多:
-
结论: 一定是恰好满足
的最小的区间。 -
证明: 设
区间均满足条件,且 ,发现 ,所以选 不如选 ,能产生更多贡献。
接下来模拟上述贪心过程即可。
T3:
棋盘上放置方案问题,很容易想到动态规划求解,观察数据范围,无法状态压缩。
但再观察,发现某一列上最多只能放两个棋子,某一行也同理,所以我们可以这样设计状态:令
转移时枚举第
-
不放棋子,直接从上一行状态转移来:
。 -
放一枚棋子,它可以放到之前没有棋子的和有一枚棋子的列:
-
放两枚棋子,可以都放到没棋子的列,都放到放一枚棋子的列,以及分别放没棋子和有一枚棋子的列。
转移方程为:
最后答案为
T4:
可以暴力枚举
对于我们选择的
理由很简单,无论是从
所以我们只找满足以下条件的
中最大值 。
这不就是找到一个数,它左右两边的最近的大于等于它的数吗。直接单调栈求出,并且这样的数对是
然后我们把询问离线下来,从大到小枚举左端点进行扫描线,对于新的左端点
如何维护答案?考虑线段树,设
对于左端点为
所以线段树维护
时间复杂度
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!