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

20250910NOIP模拟赛

20250910NOIP模拟赛

A

题意:

\(n\) 个小球分为红、蓝两种颜色排成一排,现在你可以进行若干次操作,每次操作选择任意 \(R+B\) 个小球,使其有 \(R\) 个红球,\(B\) 个蓝球,把这些小球全部染为白色,且在该选择序列中,最左侧的球到最右侧的球之间不得存在已经被染为白色的小球。

其中 \(n\le 1e5\)

思路:

首先我们考虑操作过程,存在 跳着删除 和 整段删除 这两种删除方法,且当以点 \(i\) 为删除右端点时,我们肯定是想要使得左端点与 \(i\) 的距离最近(因为此时对于白点的分布影响最小),但是观察到在跳着删除之后我们剩下的若干个联通块互不干扰,所以我们若存在一种方案使得左端点与 \(i\) 的距离最近时可能无法保证删除完成之后剩下的联通块本身能够被消除掉。

所以我们不妨把时间轴倒序,暂且考虑 整段删除 都已操作完成的情况,那么我们若把尚未被匹配的节点压入栈时,此时以 \(i\) 为右端点(如果可以消除的话)要消除的就是栈顶的 \(R+B\) 个节点,因为若让 \(i\) 再在栈上进行 跳着删除 操作时,我们必定会产生新的白色联通块,使得下一次在栈上进行操作时必定会跨越一个白色联通块,这样也能满足我们想要的 “左端点与 \(i\) 的距离最近”这一条件。

所以我们直接在栈上进行操作,每次判断栈顶的 \(R+B\) 个元素是否能够形成一次操作。

http://www.wxhsa.cn/company.asp?id=1324

相关文章:

  • 分治 NTT 一则
  • U604938 你不准卡 O(n sqrt n log L) 其中 L log L = sqrt n
  • 20250906
  • 【2025最新推荐】AI大模型API中转站 | 国内直连ChatGPT/Claude/Gemini全系API接口服务
  • 在用灵魂去感受另一个灵魂的震颤
  • html怎么写
  • 谁拿了谁的伞?
  • NSSCTF-misc
  • 百粉粉福
  • lc1024-视频拼接
  • 多元统计分析1
  • OI界的梗
  • 202404_QQ_ZIP嵌套
  • 无重复字符的最长子串-leetcode
  • 两个常见的 计数问题 trick
  • 搜维尔科技:Xsens人形机器人拟人动作AI训练,提升机器人工作精度与效率
  • 202110_绿盟杯_隐藏的数据
  • 【初赛】图 - Slayer
  • 线上课
  • 弹窗、抽屉、当前页和新开页,到底怎么选? - 智慧园区
  • POJ 2566 Bound Found
  • 搜维尔科技:Haption触觉力反馈系统,沉浸式远程呈现、数字孪生、混合现实和移动远程机器人
  • 飞书免费企业邮箱推荐
  • CF1140F Extending Set of Points
  • Lark免费企业邮箱推荐
  • CMP 40HX在PVE9.0配置vGPU
  • 耶日奈曼:置信区间与假设检验的奠基者
  • 尚硅谷后台管理系统
  • Web语音聊天室中录音无声问题分析与解决方案
  • 25.9.11随笔联考总结