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

2025.11.03 正睿

正睿二十连测

image

可以把左移操作看成将某个元素丢到最后。

如果两种颜色相交了,一定要把一种颜色全丢到最后。

所以题目转化为至少要往后丢多少个元素(最多保留多少个元素不动)。也就是每种颜色设 \(l_i, r_i\) 为其第一次出现和最后一次出现的位置,\(v_i\) 表示数量。要选出若干个不相交区间使得 \(\sum v_i\) 最大。

显然可以 DP,令 \(dp_i\) 表示前 \(i\) 个数 \(\sum v\) 最大值,\(dp_{l_i - 1}\) 转移到 \(dp_{r_i}\) 即可。(按 \(r_i\) 排序)

对于选出来的 \(r_{\max}\) 后面的元素,可以选一种颜色出来当作它们本来就在最后,先执行这种颜色的后移操作即可。

时间复杂度:\(O(n)\)


没有想到转换成选出不相交的 \([l, r]\) 这个经典模型。左移其实就是将一个元素挪到末尾。

http://www.zskr.cn/news/39055.html

相关文章:

  • c++虚函数与纯虚函数解析
  • 杂谈:关于java帝国的一些内容
  • 11月3日日记
  • 概率论练习
  • [linux]记账工具-监控用户活动
  • 10-31 题
  • STM32学习之概念——仿真器、调试器、下载器
  • 洛谷 P3273
  • 好久没来了
  • 【入门】使用Node.js开发一个MCP服务器
  • AgenticSeek:完全本地的AI助手,保护隐私的智能代理
  • CSP-S 2025 题解
  • 洛谷 P11190
  • linux报错
  • 高级语言程序设计作业3
  • P14359 [CSP-J 2025 T3] 异或和 ← 前缀异或和
  • 第14天(中等题 滑动窗口、哈希表)
  • Office 2024 专业增强版下载安装教程:安装/下载/激活/全流程教程
  • fhq treap笔记
  • 11/3
  • ICPC2025 武汉站 游记
  • 基于Blocking queue的生产消费模型
  • React中useContext的基本使用和原理解析
  • JDK的安装过程
  • File文件操作
  • 越南航空数据泄露事件深度解析
  • redux-thunk和createAsyncThunk
  • 【AI说Rust 01】Rust 的学习路线
  • P11771 题解
  • CSP-S 2025 饭堂寄