当前位置: 首页 > news >正文

CF 1053 Div.2

E. Limited Edition Shop

经过一些简单转化,要解决的是如下问题:

二维平面上有 \(n\) 个点,点有点权。\(n\) 个点横坐标、纵坐标都是 \(1\sim n\) 的排列。要求选择若干点,满足它们右下角区域的并集中的点点权和最大。

考虑 \(dp\)。设 \(dp_i\) 表示考虑到从左往右第 \(i\) 个点时(必选)答案的最大值。

如图所示,如果 \(i\) 想从 \(j\) 转移,需要加上绿色部分的点权和。这可以转化成绿色+红色部分的点权和减去红色部分的点权和。其中,绿色部分的点权和可以直接算,红色部分的点权和可以在 \(j\) 处处理。当 \(i\) 增加时,红色部分去掉一列。这一列只可能有一个点 \((i,y_i)\)。所以对于所有 \(j<i\)\(y_j>y_i\),红色部分都会减去该点权。这启示我们使用线段树维护,时间复杂度 \(O(n\log n)\)。线段树下标是 \(y_i\),原因显然。

F. Attraction Theory

观察原始 \(p\) 序列显然是没有用的,我们改为观察 \(p\) 的桶数组 \(f\)。经过思考,发现如下事实:

  • \(f\) 中有值的位置一定连续。
  • 设这段连续的位置为 \([L,R]\),那么需要满足对于所有 \(L<i<R\)\(f_i\) 是奇数。
    这两个条件都可以归纳证明。并且可以发现,这两个条件是充要的,任意一个满足条件的 \(f\) 都可以简单构造出一种合法的方案。

现在这个题就是一个纯粹的计数题了。假设 \(L=1\),我们枚举区间长度 \(Len\)。因为 \(f\) 要满足奇偶性限制,我们不妨将 \(f\) 数组处理一下得到 \(g\) 数组。具体地,

  • \(f_1 = 2g_1 + x(1 \leq x \leq 2)\)
  • \(f_{Len} = 2g_{Len} + y(1\leq y \leq 2)\)
  • \(f_i = 2g_i + 1(1<i<Len)\)

因为 \(f_i\geq 1\),所以显然,\(g_i \geq 0\)

\(S=n-x-y-(Len-2)\),则显然 \(\sum g_i = \frac{S}{2}\),因为 \(\sum f_i = n\)。所以我们要求所有的 \(\sum 2g_ia_i\)。还有一些 \(x,y,1\) 之类的常数可以稍后处理。然后发现,\(g_i\) 是相当线性的,并且只考虑 \(g\) 的和的话,各个 \(g_i\) 之间并没有什么区分,也就是说它们是对称的。因此,我们可以发现,所有方案中每个 \(g_i\) 的和是分别相同的!

也就是说,\(g_i\) 的期望值是 \(\frac{S}{2Len}\)。所以 \(\sum 2g_ia_i\) 就等于 \(cnt\sum 2\frac{S}{2Len}a_i\),其中 \(cnt\)\(g\) 的方案数。然后就非常简单的做完了。\(L \neq 1\) 的情况是类似的,可能要再推一下式子吧。常数处理是简单的,时间复杂度好像可以做到 \(O(n)\)

为什么 \(1\leq x,y\leq 2\) 呢?如果 \(0\leq x,y\leq 1\),那么 \(x=0\)\(g_1\) 就不能等于 \(0\) 了!这样是很烦的。不过若 \(1\leq x,y\leq 2\),那么就只需要满足 \(g_1\geq 0\) 了。非常好。

http://www.hskmm.com/?act=detail&tid=17029

相关文章:

  • vi编辑器
  • 豆油
  • MQTT
  • 源码安装fail2ban
  • 类的继承与继承的覆盖
  • linux shell awk 中括号 方括号 分割 []
  • springboot配置文件关系及加载顺序
  • 绩效面谈中的优质提问(一)
  • 简单博弈
  • 从 “纸笔清单” 到全栈引擎:数据填报与类 Excel 控件如何重塑企业效率曲线 - 详解
  • 触摸IC原厂 VKD223EB是一款低电流1通道触控1按键触摸芯片 HBM静电大于5KV
  • 09_五大IO模型
  • wsl Ubuntu 使用cmake
  • 做题笔记总板
  • day 4
  • AI元人文思想体系:从哲学基础到价值原语博弈的微观机制
  • 做题笔记16
  • 条件判断语句
  • EXCEL 行列转换
  • 做题笔记6
  • 第17章 Day20-Day21 逆向爬虫之瑞数6
  • 基于多假设跟踪(MHT)算法的MATLAB实现
  • ROS2之消息接口
  • Linux grep cut tomcat logs
  • Vona ORM分表全攻略
  • 如何在预算与风险之间做选择 iOS 混淆(源码混淆 vs IPA 混淆)的成本-收益分析与实战决策框架
  • 【兰州大学主办|EI稳定检索】第二届信息光学与光电技术国际学术会议(CIOT 2025)
  • 深入解析:设计模式-状态模式详解
  • 【IEEE出版】第五届网络通信与信息安全国际学术会议(ICNCIS 2025)
  • 第16章 Day19 Charles安装和使用---微信小程序逆向